正则表达式仅验证A-Z,a-z,0-9,空格,句点,连字符 - 感叹号!问号?引用“

时间:2014-01-25 14:43:12

标签: regex

我想使用正则表达式验证用户输入的文本。

/^[a-zA-Z0-9 ]+$/

通过以上行,我们只允许使用字母,数字和空格。

允许使用正则表达式:

字母,
数字,
空间,
期间。
连字符 -
感叹号!
问号?
引用“

除上述字符外,用户不能输入其他字符。

谢谢, naveenos

3 个答案:

答案 0 :(得分:6)

您只需要在正则表达式中的字符类中包含此额外符号。

您可以使用此正则表达式:

/^[a-zA-Z0-9 "!?.-]+$/

答案 1 :(得分:6)

你快到了。试试这个:

/^[a-zA-Z0-9 .!?"-]+$/

请注意-字符的位置很重要。如果它出现在两个字符之间(例如a-z),则表示字符范围。如果它出现在字符类的开头或结尾(或者如果它被转义),它表示一个字面连字符。

答案 2 :(得分:-1)

尝试这种模式

<?php /^[a-zA-Z0-9 \s\.\!\?\"\-]+$/ ?>