我試圖驗證對已經在我身上強加以下正則表達式的字符串:PHP非常嚴格複雜的字符串驗證使用的preg_match
[-,.:; 0-9A-Z&@$£¥€'"«»‘’「」?!/\\()\[\]{}<>]{3}[-,.:; 0-9A-Z&@$£¥€'"«»‘’「」?!/\\()\[\]{}<>*=#%+]{0,157}
任何人可以用PHP編寫一個preg_match
驗證輸入幫助反對這個字符串?我很努力,因爲:
- 我正則表達式的知識不是擺在首位的是偉大的
- 我看到在正則表達式本身的特殊字符,我覺得肯定PHP不會高興我直接插入一個字符串(如$£¥€)
在徒勞的希望我剛剛試了一下扎進preg_match
,轉義雙引號,即:
$ste = "Some string input";
if(preg_match("/[-,.:; 0-9A-Z&@$£¥€'\"«»‘’「」?!/\\()\[\]{}<>]{3}[-,.:; 0-9A-Z&@$£¥€'\"«»‘’「」?!/\\()\[\]{}<>*=#%+]{0,157}/",$ste))
{
echo "OK";
}
else
{
echo "Not OK";
}
謝謝進階ANCE!
你已經有了你的正則表達式。那麼這是關於什麼的? –
所以,你想要一個字符串,可以匹配一個正常表達式,你不知道的功能?爲什麼? – davidkonrad
你應該啓用錯誤報告,你會注意到你應該在你的正則表達式中轉義'/'或者把分隔符替換成'〜'。 – HamZa