JavaScript正则表达式特殊情况
正在寻找关于regex for JS的帮助并添加更多字符。这就是它目前包括的内容(我认为):JavaScript正则表达式特殊情况,javascript,regex,Javascript,Regex,正在寻找关于regex for JS的帮助并添加更多字符。这就是它目前包括的内容(我认为): 所有字母数字字符 空间 撇号 句号(dot) 逗号 下划线和连字符 我现在的正则表达式如下: /^[\w-\.-\,\s-']+$/ 它的格式能更好吗?这是针对web表单上的文本字段的,我对当前声明的其他建议或潜在缺陷持开放态度 最后,我将如何添加$和&和%字符 检查我的正则表达式的JS是: function has_error(el, type) { var textReg = /^[
- 所有字母数字字符
- 空间
- 撇号
- 句号(dot)
- 逗号
- 下划线和连字符
/^[\w-\.-\,\s-']+$/
它的格式能更好吗?这是针对web表单上的
文本字段的,我对当前声明的其他建议或潜在缺陷持开放态度
最后,我将如何添加$
和&
和%
字符
检查我的正则表达式的JS是:
function has_error(el, type) {
var textReg = /^[\w-\.-\,\s-']+$/;
if ( el.val() == '' || (type=='text' && !textReg.test(el.val())) ) {
// apply error logic
return true;
} else {
// clear error logic
return false;
}
}
注意,字符类中的破折号表示一个范围,这里不需要。将破折号放在起点或终点以避免出现这种情况。此外,无需避开标点符号:
/^[\w.,'\s-]+$/
添加更多字符很容易:
/^[\w.,'\s$%&-]+$/
请注意,
$
表示字符类中的文字$
,而不是“字符串结束锚点”。实际上,'
在iOS上不起作用。有没有更新iOS Safari的正则表达式的想法?你说的“不工作”是什么意思?它和撇号不匹配吗?也许您的文本包含类似于'''.''.'
的排版撇号?尝试复制并将它们添加到正则表达式中。我的功能是使用iOS撇号阻止表单提交。我会试着把它们加进去。