我正在编写一个需要捕获字母数字字符串后跟空格(或不是),等号(=)后跟空格(或不是),然后以字母数字结尾的javascript。以下是一些正确的字符串:
Computer45 = Upstairs22
Computer45=Upstairs22
45Computer=22Upstairs
45Computer =22Upstairs
45Computer= 22Upstairs
我使用的是以下表达式,但每次都在javacript中失败。
var regx = /^\w+\s*=\s*\w+/
var pair = document.getElementById("userInput").value;//by id
isValid = regx.test(pair);
看起来很简单。然而它失败了。任何帮助将不胜感激。感谢
答案 0 :(得分:1)
在JavaScript中,regex literals需要包含在/
:
var regx = /^\w\s*=\s*\w$/
否则,^
将被视为binary bitwise operator,它本身需要一个表达式,因此它将抛出。
无论如何,这个正则表达式与@Rooster explains不匹配。
答案 1 :(得分:1)
假设您将正则表达式放在/
中,那么您在\ w
+
这样:
^\w+\s*=\s*\w+$