正则表达式,仅限英语特殊字符

时间:2012-04-11 07:38:34

标签: regex regular-language

我需要一个正则表达式来匹配a-zA-Z0-9以及空格和特殊字符,但只包括英文空格/特殊字符,而不是法语或西班牙语等其他语言。

感谢。

3 个答案:

答案 0 :(得分:1)

编写与英语匹配但不是法语,西班牙语和其他语言的正则表达式是不可能/不实际的。

如果你真的想测试一个单词是否来自英语,你可以写一些代码在英语词典中查找。这应该很简单。

答案 1 :(得分:1)

根据正则表达式引擎,您可以使用:

^\p{IsBasicLatin}*$

仅允许Basic Latin character set中的字符,其中包括标准英语语言标点符号(即可以直接在美国键盘上输入的字符)。

答案 2 :(得分:1)

我正在寻找一个与普通英语文本匹配的正则表达式(并避免使用html / xml / url等)并登陆此页面。我认为提问者只是想避免使用语音信息,但允许使用英文标点字符。我最后自己写了一些东西,看着我的键盘

[A-Za-z \ d,。?;:\'“!$%()] *

我并不认为这对每个人都有用,但对我来说已经足够了。