首页 > 解决方案 > regx 使用 javascript 或 jquery 在整个字符串中检查 +

问题描述

我正在尝试验证输入字符串以检查它是否在字符串中的任何位置包含“+”符号。我使用了 for of 循环,但没有得到预期的结果。

const isMobileValidWithoutPlus = funcLib.isValidMobileWithoutPlus(mobileNumber);

isValidMobileWithoutPlus(mobileNumber) {
    if (!mobileNumber) {
      return false;
    }
    const checkRegex = new RegExp('\\+?\\d+');
    return checkRegex.test(mobileNumber);
  }

but able to get desired out.

标签: regexreactjs

解决方案


正则表达式将是

const rgx = new RegExp(/\+/gm);

您的正则表达式检查您是否有一个可以以 + 开头或不以 + 开头并后跟一个或多个数字的字符串。但是您说您只想检查号码中是否有“+”。为此,您可以使用上面的这个正则表达式。

另外,你需要使用正则表达式吗?

如果不需要使用正则表达式,您可以在字符串上使用 indexOf 来执行此操作。

let number = "+001234";
function hasPlus(number) {
    return number.indexOf('+') !== -1;
}

当您没有要查找的特定字符串,或者当您想在较长的字符串中查找正则表达式的所有幻影时,正则表达式通常很有用。在您的情况下,检查字符串是否包含“+”,没有必要使用它们。


推荐阅读