2011-12-15 96 views
2

我有一个正则表达式的问题,允许我把一个名称可以说如果一个机构可以包含其他语言,空白和 - 字符的特殊字符。 我知道表达我创建:Zend - 正则表达式允许空白和Unicode字符

/^[a-zA-Z- "\']*$/ 

将允许从一个字符到Z和 - “”字符和空格但是当我键入żźćąś或其他语言的特殊字符的字符串是无效的,但我想它。为有效

其中我创建

第二表达:。

/^[^\~\\!\\@\\#\\$\\%\\^\\&\\*\\(\\)\\`\\1\\2\\3\\4\\5\\6\\7\\8\\9\\0\\_\\+\\=\\{\\}\\:\\"\\;\\\\\<\\>\\?\\,\\.\\/\ ]*$/ 

允许在没有上述禁止字符az字符但我不禁止在正则表达式的上述的白色空间,但是当我与像例如空间键入内容:

"Bielsko Biała"

它不是有效的,但是当我在一起键入:

"BielskoBiała"

它是一个字符有效。所以我想允许特殊字符如żźćąśł和其他语言的其他人,但也喜欢允许空格,我不打结该怎么做。

当我使用阿尔法验证也没关系,但不要允许把 - “”字符,我也想让

回答

2

首先,你必须能够与u开关UTF-8支持然后,您可以。匹配Unicode字母与序列\pLhere

所以,你的解决方案将是

/^[\pL- "\']*$/u 
+0

correst我,如果我错了。PL指质感的特殊字符是吗?所以我也必须添加其他语言的快捷方式全部其他语言的特殊字符? – DarAss 2011-12-15 20:23:52

相关问题