在JavaScript上比较字符串时使用通配符
我需要比较两个字符串,是否有通配符 如果没有通配符,我怎么做?要比较的字符串是子字符串的串联,如用“,”分隔的HHH-H-HHH 例如:在JavaScript上比较字符串时使用通配符,javascript,string,compare,wildcard,Javascript,String,Compare,Wildcard,我需要比较两个字符串,是否有通配符 如果没有通配符,我怎么做?要比较的字符串是子字符串的串联,如用“,”分隔的HHH-H-HHH 例如: var str1 = "HHH-H-HHH,OOO-O-OOO" var str2 = "HHH-$-HHH,OOO-O-OOO" var str3 = "HHH-H-HHH,OOO-$-OOO" var str4 = "HHH-H-HHH,OOO-U-OOO" str1.equals(str2) // SHOULD BE TRUE str1.equ
var str1 = "HHH-H-HHH,OOO-O-OOO"
var str2 = "HHH-$-HHH,OOO-O-OOO"
var str3 = "HHH-H-HHH,OOO-$-OOO"
var str4 = "HHH-H-HHH,OOO-U-OOO"
str1.equals(str2) // SHOULD BE TRUE
str1.equals(str3) // SHOULD BE TRUE
str1.equals(str4) // SHOULD BE FALSE
使用正则表达式:
var str1=“HHH-H-HHH,OOO-O-OOO”
var str2=“HHH-H-HHH,OOO-U-OOO”
变量rgx1=/HHH-.*-HHH,OOO-O-OOO/
变量rgx2=/HHH-H-HHH,OOO-.*-OOO/
console.log(rgx1.test(str1))//应为TRUE
console.log(rgx2.test(str1))//应为TRUE
console.log(str1==str2)//应该为FALSE
请参阅,而且您编写的代码是Java:JavaScript没有本机的字符串.prorotype.equals()
方法。@msnford正如Bergi正确指出的那样,.test()
更好,因为它返回一个布尔值(因此无需!!
).是的,如果你看到我在match()
train上的原始评论,你会发现我也训练得太快了。:)