1
我的代碼在一個Perl文件中的以下行:如何在Perl中使用grep與數組?
@arr1 = grep(/"$subslots_det[0]"/,@grepped_int);
烏拉圭回合參考@grepped_int陣列的轉儲看起來是這樣的:
$VAR1 = [
'GigabitEthernet4/2/1 unassigned YES NVRAM administratively down down ',
'GigabitEthernet7/1 unassigned YES NVRAM administratively down down ',
'GigabitEthernet7/2 unassigned YES NVRAM administratively down down ',
]
這裏讓我們假設, $ subslots_det [0] =「4/2」;
所以grep的聲明應符合:
GigabitEthernet4/2/1 unassigned YES NVRAM administratively down down ',
眼下它不這樣做,IAM懷疑這是因爲在4/2的斜槓。 有沒有辦法可以逃脫在下面的命令正斜槓:
@arr1 = grep(/"$subslots_det[0]"/,@grepped_int);
我嘗試沒有報價,仍然犯規的比賽,但是,如果我做@ ARR1 = grep的(/ 4 \/2 /,@ grepped_int); – user3094070
@ user3094070 - 只有在字面字符時才需要轉義「/」。你可以通過改變正則表達式字符從「/」到「#」來輕鬆測試,所以你不需要關心轉義:'@ arr1 = grep(m#$ s [0]#,@ grepped_int)' – DVK
抱歉我的錯誤:)我已經定義了不同的匹配標準,這是它匹配,現在它完美的作品,非常感謝,答案接受。 – user3094070