如何向正则表达式添加特殊符号以允许在文本字段中使用
How to add special symbol to the regular expression to allow in text field?
我有以下代码,它只允许数字0-9。
但我也想允许-(hyphon)。[- ASCII 代码为 45]
我试过了..但是没有用..你能更新我的代码吗?
函数是数字键(e) { if (window.event) { var charCode = window.event.keyCode; } else if (e) { var charCode = e.which; } else { return true; } if (charCode> 31 && (charCode <48 || charCode> 57)) { return false; } 返回真; } 函数提交我的号码() { var input = document.getElementById('myInput').value; 返回 input.match(/^[0-9-]+$/) != null; }
<form>
<input type="text" id="myInput" name="myInput" onkeypress="return isNumericKey(event);" /><br />
<input type="submit" id="mySubmit" name="mySubmit" value="Submit My Number" onclick="return submitMyNumber();" />
</form></pre>
拉克斯曼·乔达里
似乎您过滤了 45 个字符
function isNumericKey(e)
{
if (window.event) { var charCode = window.event.keyCode; }
else if (e) { var charCode = e.which; }
else { return true; }
if (charCode == 45 || (charCode >= 48 && charCode <= 57)
return true;
else
return false;
}
会更好地工作。
在正则表达式中指定范围时,以连字符开头。
/^[-0-9]+$/
^-- here
/^[0-9-]+$/
^--- does not work here
如果要匹配日期,则模式可能类似于dd-dd-dd(但是哪种格式?ISO YYYY-MM-DD ?或其他东西)更正确的模式将是。
/^'d{4}-'d{2}-'d{2}$/
可能这个更好
/^[12]'d{3}-[01]'d-[0-3]'d$/
对于 DD-MM-YYYY 恢复模式非常简单:
/^[0-3]'d-[01]'d-[12]'d{3}$/
> 如果您想接受 29-06-2012 即 2 位数字连字符 2 位数字连字符 4 位数字,这是日期模式,正则表达式[0-9]{2}-[0-9]{2}-[0-9]{4}
相关文章:
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- 当设置addFromAutocompleteOnly时,剩余文本将保留在输入字段中
- 使用jquery将输入字段转换为文本
- 如何从查询字符串中的输入字段发回文本
- 表单输入字段随着溢出的文本而增长
- 使用单个文本框向多个字段添加严格搜索
- 使用javascript提交表单并从字段/单选框/复选框/文本区域获取数据
- 使用jQuery的输入字段文本换行
- 向使用jQuery加载DOM后添加的字段添加不受限制的文本输入DatePickers
- 当用户单击按钮(在光标位置)时,在输入字段中添加一个文本字符串
- 如何根据文本长度立即显示和隐藏字段?-JQuery
- 如何使文本、数字和日期html输入字段以一致的方式支持Ctrl+Z(撤消)
- 模拟文本输入字段上的退格键
- 输入字段中的可持续文本
- 未获取文本输入字段的值
- 没有文本安全性的密码字段
- 将禁用的输出字段更改为带前缀的文本
- 为什么 react 将输入[类型=“文本”] 字段设为只读,除非我提供 onChange 回调
- 使用SAPUI5中的“文本”字段显示正确的“日期”
- Kendo,如何将MVVM文本:字段绑定到远程DataSource