我有一個快速的正則表達式問題,我想有人可能知道他們的頭頂。如果我只想允許上/下字母數字,空格,標點符號和引號,那麼CakePHP驗證的正則表達式是什麼?這是我有什麼,但它的關閉:CakePHP驗證正則表達式
'rule' => array('custom', '/[a-z0-9\x20\x21\x2E\x3A\x3B\x3F\x2C\x27\x22]{0,600}/i'),
從我得到的一個-Z0-9涵蓋字母,但不應該在\ XXX支付與ASCII十六進制代碼標點符號?然後{0,600]表示長度爲0-600個字符,我的意思是上下。我錯過了什麼?
例如:valid:這是一個「有效文本」,其中包含'和標點符號!
無效:這是一個明顯的XSS嘗試
謝謝傑克,但你能解釋哪部分意味着什麼?我試圖學習正則表達式,但它是一次學習很多:) – 2012-04-20 05:36:05
另外:你的正則表達式拋出這個錯誤:preg_match():沒有結束分隔符'^'找到[核心/蛋糕/效用/ Validation.php, 781行] – 2012-04-20 05:40:46
「^」表示字符串的開始,「$」表示字符串的結尾。它搜索整個字符串,並確保從頭到尾,唯一有效的字符是數字,字母,標點符號等。 – Jack 2012-04-20 05:43:32