我想扔了很多的變化在正則表達式模式,但我不能確定是否可以使用的東西像串字符這樣開始:這是一個有效的正則表達式模式?
preg_match("#/str1|str2|^/str3#i",$_SERVER['REQUEST_URI'])
所以下面應該滿足的值:$ _SERVER ['REQUEST_URI']
包含/str1
或str2
或字符串的開頭應爲/str3
。
我想扔了很多的變化在正則表達式模式,但我不能確定是否可以使用的東西像串字符這樣開始:這是一個有效的正則表達式模式?
preg_match("#/str1|str2|^/str3#i",$_SERVER['REQUEST_URI'])
所以下面應該滿足的值:$ _SERVER ['REQUEST_URI']
包含/str1
或str2
或字符串的開頭應爲/str3
。
你的正則表達式也許應該是:
preg_match('#(\/str1|str2|^\/str3)/i#', $_SERVER['REQUEST_URI);
爲了更好地理解文字表達的,檢查Pankit的link。
嗯,這不需要'/ str1'和'str2'在字符串的開頭嗎? –
正確,可能誤讀'contains' with'starts'我認爲,編輯了正則表達式。 –
[查看本(http://net.tutsplus.com/tutorials/other/8-regular-expressions-you-should-know/) –
你的正則表達式似乎做了正確的事情。 –
@JoachimIsaksson我應該把它放在括號裏嗎?比如'preg_match(「#/(str1 | str2 | ^/str3)#i」,$ _ SERVER ['REQUEST_URI'])' - 有什麼區別嗎? – Brett