我一直在学习正则表达式是如何工作的,这对我来说非常棘手。我想从输入字段验证下面的字符。基本上,如果字符串包含这些字符中的任何一个,alert('bad chars')
我找到了这段代码,但当我改变它时,似乎不起作用。如何修改此代码以满足我的需要?
var str = $(this).val();
if(/^[a-zA-Z0-9- ]*$/.test(str) == false) {
alert('bad');
return false;
} else {
alert('good');
}发布于 2013-08-02 16:44:32
/^[a-zA-Z0-9- ]*$/指的是以下内容:
^字符串必须从这里开始[a-zA-Z0-9- ]:a和z大小写之间的字母,0和9之间的数字,虚线(-)和空格。*重复0次或多次$字符串必须在这里结束。在“任意字符除外”的情况下,您可以像这样使用^:/^[^\/\\#&]*$/。如果这与真匹配,那么它就没有任何这些字符。^就在[后面,意思是匹配任何不是以下内容的内容。
。
发布于 2013-08-02 16:44:01
您可以尝试以下几种方法:
if("/[\\/#&]/".test(str) == true) {
alert('bad');
return false;
} else {
alert('good');
}注意:--在JavaScript和.NET正则表达式中需要转义的字符不是100%,但基本上,我是说如果您的字符串包含任何字符\、/、#或&,那么就警告'bad‘。
https://stackoverflow.com/questions/18021961
复制相似问题