javascript - 允许某些特殊字符,但必须是字母数字

标签 javascript regex validation

我当前的正则表达式

 ^[a-zA-Z0-9\s][.,-:/\\]*$

但我希望用户也插入至少一个字母或数字字符,而不仅仅是特殊字符。

最佳答案

您可以使用正向前瞻断言来完成此操作,使用正则表达式 /^(?=.*[a-z0-9].*)[a-z0-9\s.,:\/\\-]*$/i

var re = /^(?=.*[a-z0-9].*)[a-z0-9\s.,:\/\\-]*$/i;

$('#test').on('input', function() {
  $(this).css('color', re.test(this.value) ? 'green': 'red');
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input id="test">

<强> Regex explanation

Regular expression visualization

关于javascript - 允许某些特殊字符,但必须是字母数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33866675/

相关文章:

javascript - 适用于 macOS 的 Node.js 应用程序捆绑

javascript - javascript正则表达式,用于转义逗号和双引号

validation - Symfony 验证 : First property constraint then class constraint

javascript - HeaderTemplate 中的 CheckBox 验证 ItemTemplate CheckBox

r - 将文本检索到数据帧的两列中的正则表达式模式匹配错误

java - 根据 Spring MVC 中服务的结果验证单个字段

javascript - 我们是否需要手动清理闭包中未引用的变量?

javascript - CodeMirror 显示 2 滚动

regex - 如何从 nginxconf 中排除目录?

javascript - 正则表达式删除除 <br> 之外的所有 html 标签