我需要一个正则表达式来匹配包含字母、数字、空格和一些简单标点符号(.,!"'/$
)的字符串。 我有一个正则表达式 ^[A-Za-z0-9 _]*[A-Za-z0-9][A-Za-z0-9 _]*$
,它可以很好地匹配字母数字和空格,但不能匹配标点符号。 希望能得到帮助。
我需要一个正则表达式来匹配包含字母、数字、空格和一些简单标点符号(.,!"'/$
)的字符串。 我有一个正则表达式 ^[A-Za-z0-9 _]*[A-Za-z0-9][A-Za-z0-9 _]*$
,它可以很好地匹配字母数字和空格,但不能匹配标点符号。 希望能得到帮助。
只需在类别中(方括号内)添加标点符号和其他字符即可:
[A-Za-z0-9 _.,!"'/$]*
这个正则表达式匹配包含空格、下划线、字母数字、逗号、感叹号、引号、美元符号以及其他特殊字符的所有字符串。在添加一些特殊字符时要注意转义: 在这里了解更多
假设您的正则表达式要求字符串中至少有一个字母数字字符,那么我建议使用以下方法:
/^(?=.*[A-Z0-9])[\w.,!"'\/$ ]+$/i
(?=.*[A-Z0-9])
向前查找,检查是否存在一个ASCII字母或数字;嵌套的字符类包含所有ASCII字母数字,包括下划线 (\w
) 和你提到的其他标点符号。斜杠需要转义,因为它也用作正则表达式定界符。 /i
修饰符使正则表达式不区分大小写。
<script type="text/javascript">
check("hello dfdf asdjfnbusaobfdoad fsdihfishadio fhsdhf iohdhf");
function check(data){
var patren=/^[A-Za-z0-9\s]+$/;
if(!(patren.test(data))) {
alert('Input is not alphanumeric');
return false;
}
alert(data + " is good");
}
</script>