验证 JavaScript 正则表达式
validation of javascript regular expression
我有以下JavaScript字符串:
#d1{width:100px;}
它看起来像 CSS 代码
现在我写了一个正则表达式,用于查找字符串中以 #
或 .
开头的元素。
正则表达式如下所示:
/(?:(#|'.)([A-Za-z0-1'-]+))/g
上面的正则表达式成功地匹配了像上面这样的字符串。
但是现在当我在 Google 控制台中对上述字符串测试此正则表达式时,它返回 false
我写的是:
var str = "#d1{width:100px} " // returns undefined
var regex = / (?:(#|'.)([A-Za-z0-1'-]+)) /g //undefrined
regex.test(str) // returns false
为什么它不起作用?
你的正则表达式中有空格,你可能不希望有空格:
var str = "#d1{width:100px} " // returns undefined
var regex = /(?:(#|'.)([A-Za-z0-1'-]+))/g //undefrined
// ^-------------------------^----- see, no spaces here
regex.test(str) // returns true
试试这个。/和参数之间的这些空格是混蛋。
function regtest()
{
var str = "#d1{width:100px}" // returns undefined
var regex = /(?:(#|'.)([A-Za-z0-1'-]+))/g //undefrined
alert(regex.test(str));
}
<button onclick="regtest()">Test</button>
相关文章:
- java.net和javascript之间正则表达式的差异
- Grunt匹配正则表达式
- 不同浏览器中的空白字符正则表达式行为
- 正则表达式在字符串中找到base64
- 子字符串/正则表达式以获取字符串中保存的 SRC 值
- 调用正则表达式匹配的函数
- 使用正则表达式评估电子邮件地址时出现性能问题
- Javascript 正则表达式 : ^[^/s/]+[a-z]{1,}[0-9]*[-_]*[^/][
- JavaScript正则表达式文本与RegExp对象
- 正则表达式只允许 x 个整数
- 使用正则表达式将输入格式设置为单字符逗号、单字符逗号等
- 改进用于验证付款金额的正则表达式
- 正则表达式与数字中的第二个点匹配
- 键按正则表达式以查找具有负值的小数
- 一个正则表达式,用于从JS中的HTML标记中删除id、样式和类属性
- 将po-box javascript正则表达式转换为c#regex
- 在mongoose中使用正则表达式在对象数组中进行查询搜索
- 使用正则表达式捕获“”并分割成阵列
- 将这些正则表达式从javascript转换为Java
- 用于验证JS中逻辑运算符表达式的正则表达式