JavaScript'外来字符'regex无法捕获模式
JavaScript 'foreign characters' regex failing to catch patterns
尝试设置一个简单的.jsp来测试JavaScript正则表达式,避免每次进行更改时都必须清理/构建/重新发布测试服务器。现有的代码取自我正在努力增加西班牙语字符识别的一个项目,但这段代码似乎根本没有发现任何不匹配的地方。
<html>
<head>
<script language="JavaScript">
function isValidTarget(target) {
if (regexTarget.target.search(/^[a-zA-Z'#'@'!'&'.'*'-:;<>"','?0-9 ]+$/) == -1) {
alert("Your input contains one or more invalid characters.");
}
}
</script>
</head>
<body>
<form name="regexTarget" method="post" onSubmit="return isValidTarget(this)">
Target: <input type="text" name="target"/>
<input type="submit" value="Submit" />
</form>
</body>
</html>
您正在尝试搜索DOM节点,而不是其值。试试这个:
regexTarget.target.value.search(...)
您将参数命名为target
,但从未使用过它。要么删除该参数,要么使用它(例如if( target.target.search...
)
if (target.target.value.search(/^[a-zA-Z'#'@'!'&'.'*'-:;<>"','?0-9 ]+$/) == -1)
相关文章:
- 替换模式忽略模式中的字符
- regex/ng模式接受某些字符
- node.js可以识别字符模式,但不能识别数字模式
- 模仿负查找以匹配JavaScript正则表达式中没有紧跟特定字符的模式
- 使用正则表达式查找字符模式
- 验证模式中的HTML5不适用于以一些特定字符开头的字符串
- JavaScript'外来字符'regex无法捕获模式
- 如何匹配两个字符内的重复模式
- 任何匹配模式的方法,要么在某个字符之前,要么在某个字符之后
- 如何使字符“[”和“]”作为正则表达式()函数中的模式
- 查找模式并仅删除几个字符
- 匹配每个字符,直到在行首出现模式(JavaScript)
- 在 PDU 模式下支持 [ 和 ] 字符
- 接受 4 个具有不同模式的字符的正则表达式
- 如何在 javascript 中使用严格模式发送控制字符
- 仅数字的 ng 模式将接受像 “-” 这样的字符,例如 Angular.js
- javascript 中的正则表达式模式,用于更改输入名称属性字符之间的值
- 模式html将数据中的字符读取为html标记
- Regex模式,不允许使用除ALL、-和[0-9]之外的字符
- 以字符开头、以数字结尾的字符串的模式匹配