lin*_*ndy 1 php regex cakephp diacritics
我试图验证一些用户输入,但我的正则表达式遇到变音符号时失败.我在谈论角色??
等等.
我应该在正则表达式代码中添加什么,以便它还应该从输入中验证变音符号?
谢谢!
PS:如果重要,我使用PHP和CakePHP框架.
这是我目前用于验证用户输入的一段代码: return preg_match('|^[0-9a-zA-Z_-\s]*$|', $value);
假设你想匹配字母,那么允许Unicode字母应该有所帮助:
使用/\p{L}+/u
,如果你想匹配的字母序列为例.不要忘记/u
(Unicode)修饰符.
在你的情况下:
return preg_match('|^[0-9\p{L}_\s-]*$|u', $value);
Run Code Online (Sandbox Code Playgroud)
应该管用.
顺便说一下,使用|
正则表达式分隔符可能不是一个好主意.对于目前的正则表达式/
会做得很好; 其他选择是~
或#
因为它们很少出现在文本中,并且在正则表达式中没有任何特殊含义.
归档时间: |
|
查看次数: |
1972 次 |
最近记录: |