我需要能夠將用戶與用戶列表進行匹配,但只能匹配完全匹配。 在下面的代碼示例中:
- 如果strUser包含「info」,則表示匹配,這很好。
- 如果strUser包含「theinfo」或「infostuff」,則表示匹配不成功。
我無法使用\ b修飾符,因爲變量將只包含用戶名,不包含空格或單詞邊界。perl僅與數組列表匹配整個單詞
#!/usr/bin/perl
$strUser = "theinfo";
$strUsers = "(alpha|info|omega)";
if ($strUser =~ /$strUsers/) {
print "match\n";
}
exit(0);
由於微不足道而關閉。 (OP使用'「\ b」'代替'「\\ b」'來創建一個由'\ b'組成的字符串,這個問題在'使用警告'中是明顯的) – ikegami 2014-10-28 15:43:46
由於答案的有用性而被撤銷。 – ikegami 2014-10-28 15:50:47
不使用'use strict;使用警告;'就像在黑暗中駕駛你的汽車沒有前燈和安全帶:你不太可能會死亡和死亡,你只是不知道它,直到它發生。 – TLP 2014-10-28 15:51:39