我正在嘗試構建一個正則表達式,與PHP兼容,允許重音字符,例如'ü'。 從我所瞭解的\ p {L}運營商應該這樣做。我至今:PHP正則表達式與重音字符不匹配
/^[a-z0-9\p{L}][a-z0-9_\p{L}]*/i
這應該允許可以與任何AZ,0-9啓動和重音字符,然後可以接着AZ,0-9的任何量和重音字符和字符串的整個表達式不區分大小寫。
但是在測試中,當在字符串的任何位置使用諸如'ü'等字符時,驗證失敗。 我已經確定被傳遞的值進行編碼UTF8使用:
utf8_encode($value)
但是它仍然失敗。 有什麼建議嗎?
在此先感謝
-------------------------編輯------------- ------------
在另一臺服務器上測試之後,原始模式也起作用。
/^[a-z0-9\p{L}][a-z0-9_\p{L}]*/i
該問題似乎與服務器設置有關。 我會在找到解決方案後發佈解決方案。
嘗試啓用UTF修改'/.../ ui' –
不幸的是,utf修飾符沒有成功。 – dooffas