Javascript 如何使用JS match检查管柱中所有可能的套管?

Javascript 如何使用JS match检查管柱中所有可能的套管?,javascript,regex,string,ecmascript-6,Javascript,Regex,String,Ecmascript 6,findErr如果在抛出我添加的错误的字符串中找到条件中的任何文本值,则该方法应返回true。覆盖所有套管方案的正确方法是什么 const str=“未涵盖无效数量无效数量产品无效数量” 常量findErrCode=((项)=> 项目匹配(/(未涵盖|无效数量|无效数量|无效数量)/) ); log(findErrCode(str))在将字符串转换为小写后使用正则表达式,然后对返回的字符串保持一定程度的控制 var str = "Not Covered Invalid Quantity INV

findErr
如果在抛出我添加的错误的字符串中找到条件中的任何文本值,则该方法应返回true。覆盖所有套管方案的正确方法是什么

const str=“未涵盖无效数量无效数量产品无效数量”
常量findErrCode=((项)=>
项目匹配(/(未涵盖|无效数量|无效数量|无效数量)/)
);

log(findErrCode(str))在将字符串转换为小写后使用正则表达式,然后对返回的字符串保持一定程度的控制

var str = "Not Covered Invalid Quantity INVALID quantityfor the product";

var findErrCode = function()
{
var regex = RegExp("invalid quantity"); 
return regex.test(str.toLowerCase());

}

如果您只想检查管柱是否包含“未覆盖”或“无效数量”,而不关心其套管,则可以使用
i
指示
测试
忽略管柱的套管:

const str=“未涵盖无效数量无效数量产品无效数量”
常量findErrCode=((项)=>
/未涵盖|无效数量/i.测试(项目)
);
log(findErrCode(“未涵盖无效数量”);
log(findErrCode(“无效数量”);

log(findErrCode(“有效数量”))为什么使用
项.结算ESC
?默认情况下,字符串没有
settlementDesc
属性。很抱歉,我为我更新的问题最小化了代码。错误意味着
的值是
未定义的
,而不是字符串。不过,在您的示例中不会发生错误。如果您提供的示例没有重现问题,我们无法帮助您。请不要在代码段中抛出错误。请创建一个@adiga yes我更新了这个问题,但我想得到布尔值,所以上面的代码应该返回true。虽然OP想要做的是一个很好的解决方案,但它不能帮助他们解决错误。@JakeSteffen我们如何检查多个字符串我们可以这样做吗
var regex=RegExp(“无效数量|未涵盖”)
@JakeSteffen消息可能包含未覆盖或无效数量我不确定您的意思,请尝试此js bin:@JakeSteffen如果字符串未包含也应视为省略的无效数量,该怎么办?请您解释此代码的作用以及从何处获取
i
test
@hussain添加了一些解释链接感谢您的解释。有没有一个简单的方法来实现相同的代码?这是一个简单的方法。。。它是您可以使用的最简单的正则表达式之一,也是一种基本的
.test
方法(如果模式匹配,它只返回true;如果模式不匹配,则返回false;
.match
将实际尝试返回匹配的位,如果您只想知道它们是否存在,则返回速度较慢)。