javascript - 正则表达式允许字母、数字和空格,但不允许连续两个空格

标签 javascript php regex

您好,我有一个最多允许 18 个字符(仅包含数字、字母和空格)的正则表达式。

如何修改它以检查字符串是否以空格开头,或者连续有两个空格?

/^[0-9A-Za-z\s]{1,18}$/

我在 native javascript(不是 jquery)和 PHP 中都使用了这个正则表达式。

最佳答案

您可以使用否定 look-ahead检查字符串是否以空格开头或有 2 个或更多连续空格,例如:

^(?!.*\s{2,})(?!^ )[0-9A-Za-z\s]{1,18}$

关于javascript - 正则表达式允许字母、数字和空格,但不允许连续两个空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36902258/

相关文章:

javascript - 如何使用下拉选择进行自动选择

php - 如何生成嵌套资源的链接?

Python,递归应用正则表达式负向前瞻

php - Docker MySQL mysqli::real_connect():(HY000/2002):连接被拒绝

PHP Storm Magic方法在持久性->参数上访问错误

java - 如何在android中替换双引号内的字符

java - 当我尝试定义某些正则表达式时出现无效的转义序列错误

javascript - Three.js .obj 加载器不适用于 3Ds Max .obj

javascript - JavaScript 保证对象属性顺序吗?

javascript - JSDoc 注释中的 JSDoc 注释