问题描述
如何检查字符串是否仅包含字母数字和任何语言的空格?
我已经尝试过波纹管,但是它不检查-* /之类的特殊字符。
preg_match("/[\p{L}]/u",$string )
preg_match("/[\p{N}]/u",$string )
解决方法
您可以使用
preg_match('~^[\p{L}\p{N}\s]+$~uD',$string)
详细信息
-
^
-字符串的开头 -
[\p{L}\p{N}\s]+
-一个或多个字母,数字或空格 -
$
-字符串的结尾。
u
修饰符将启用Unicode字符串解析,并使正则表达式中的所有模式都支持Unicode,而D
将使$
与两端都匹配的字符串。