只允许字母;没有标点没有数字

时间:2010-07-23 02:23:09

标签: php regex

嘿伙计们,你们可以帮助我吗?我有这个'/ [^ A-Za-z] /'但是无法找出标点部分。

亲切!

5 个答案:

答案 0 :(得分:4)

您正在使用的正则表达式不允许使用字母;这与你在标题中报道的内容相反。

如果你只想接受信件,那么

/[a-z]/i就足够了。如果你想允许像à,è或ç这样的字母,那么你应该扩展正则表达式; /[\p{L}]/ui应该使用所有Unicode字母。

答案 1 :(得分:2)

#^[^a-z]+$#i

您的代码是正确的,您只需要^和$。所以它意味着从开头到结尾的所有字符都不允许使用外部字母表。在这里,负匹配优先于正匹配。

答案 2 :(得分:1)

/ [^ A-Za-z] * /将匹配除字母之外的所有内容。您不需要指定数字或标点符号。

答案 3 :(得分:0)

在字符类中,^表示不是。 所以你要找一封信。 你想要像

这样的东西
[A-Za-z]+

答案 4 :(得分:0)

您也可以使用简写\w作为“单词字符”(字母数字加_)。当然,一些正则表达式引擎可能对此有所不同,但如果它是PCRE它应该可以工作。 See here(标题为“转义序列”)。