验证 JavaScript 正则表达式

validation of javascript regular expression

本文关键字:正则表达式 JavaScript 验证      更新时间:2023-09-26

我有以下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>