Javascript 带有“的正则表达式”=&引用;性格

Javascript 带有“的正则表达式”=&引用;性格,javascript,regex,Javascript,Regex,我正在编写一个javascript,它需要捕获一个字母数字字符串,后跟空格(或非空格),一个等号(=),后跟空格(或非空格),然后以字母数字结尾。以下是一些正确的字符串: Computer45 = Upstairs22 Computer45=Upstairs22 45Computer=22Upstairs 45Computer =22Upstairs 45Computer= 22Upstairs 我正在使用下面的表达式,但每次在JavaScript中都会失败 var regx = /^\w

我正在编写一个javascript,它需要捕获一个字母数字字符串,后跟空格(或非空格),一个等号(=),后跟空格(或非空格),然后以字母数字结尾。以下是一些正确的字符串:

Computer45 = Upstairs22
Computer45=Upstairs22
45Computer=22Upstairs
45Computer  =22Upstairs
45Computer=  22Upstairs
我正在使用下面的表达式,但每次在JavaScript中都会失败

var regx = /^\w+\s*=\s*\w+/
var pair = document.getElementById("userInput").value;//by id
isValid = regx.test(pair);
这似乎是直截了当的。但它失败了。任何帮助都将不胜感激。感谢JavaScript中的,需要包含在
/
中:

var regx=/^\w\s*=\s*\w$/
否则,
^
将被视为,它需要在自身之前有一个表达式,因此它将抛出


无论如何,这个正则表达式与您的字符串不匹配,如@Rooster。

假设您将正则表达式放入
/
,那么您的\w

因此:


正则表达式看起来有效,但我希望您将其定义为一个文本(例如在
/
中),而不是像您所示直接在代码文件中?还有,你说的“失败”是什么意思?不匹配?Javascript错误?控制台中是否有任何信息?我所说的失败是指它不匹配。抱歉,发布了旧的var。它实际上是:var regx=/^\w\s*=\s*\w/是的,它是封闭的,就像所示的@Oriol一样。我还添加了+,所以现在它的内容是:var regx=/^\w+\s*=\s*\w+/,但是当我使用firebug调试它时,它仍然不匹配:对于上面的示例,regx.test(pair)返回false。在本页上,我刚刚打开了JS控制台<代码>变量regx=/^\w+\s*=\s*\w+/;注册测试(“45台计算机=22台”)返回
true
。你确定没有其他代码干扰吗?Fiddle证明了它的有效性:(请原谅我使用了警报……已经晚了)。Chrome版本43.0.2357.65 m。也适用于Firefox 37.0.2
^\w+\s*=\s*\w+$