我使用下面的代码来查找加号的匹配但是它一直返回false。我不确定我做错了什么。任何帮助将非常感激。谢谢!
var str = '+2443';
var result = /d\+1/.test(str);
console.log(result); // true
答案 0 :(得分:0)
您的/d\+1/
正则表达式匹配任何字符串中第一次出现的d+1
子字符串。
要检查字符串是否包含+
,您不需要正则表达式。使用indexOf
:
var str = '+2443';
if (~str.indexOf("+")) {
console.log("Found a `+`");
} else {
console.log("A `+` is not found");
}
当您需要在某些上下文中匹配+
时,正则表达式会更合适。例如,要检查字符串是否以加号开头,然后仅包含数字,您可以使用
var str = '+2443';
var rx = /^\+\d+$/;
console.log(rx.test(str));
其中^
资产位于字符串末尾的位置,\+
匹配文字+
,\d+
匹配1+位数和$
锚点断言字符串末尾的位置。