试图让用户使用其他语言(如西班牙语或法语)中的特殊字符。我本来有这样的:正则表达式允许任何语言的文字(如“ñ”)
"/[^A-Za-z0-9\.\_\- ]/i"
,然后将其改为
"/[^\p{L}\p{N}\.\_\-\(\) ]/i"
,但仍然无法正常工作。应该允许诸如“ñ”的字母。谢谢。
修订: 我发现在开头添加(* UTF8)可以帮助解决问题。所以我使用下面的代码:“/(* UTF8)[^ \ p {L} A-Za-z0-9 ._-]/i”
修改: 使用:“/ [^ \ p {Xwd}。 - ]/u”。谢谢(即使有中文字母,它也能工作)
[Documentation](http://www.php.net/manual/en/regexp.reference.unicode.php)总是有用的。 – tenub
允许一切,然后没有你需要做的 – 2014-02-26 20:33:48
@Dagon意图似乎是让*字母*(和数字和一些特殊字符),而不是*所有* :) – user2864740