我想检查字符串b
是否完全包含在字符串a
中。
我尝试过:
var a = "helloworld";
var b = "wold";
if(a.indexOf(b)) {
document.write('yes');
} else {
document.write('no');
}
输出是yes,这不是我预期的输出,因为字符串b(wold)没有完全包含在字符串a(helloworld)中 --- wold v.s. world。
有什么建议可以检查该字符串吗?
我想检查字符串b
是否完全包含在字符串a
中。
我尝试过:
var a = "helloworld";
var b = "wold";
if(a.indexOf(b)) {
document.write('yes');
} else {
document.write('no');
}
输出是yes,这不是我预期的输出,因为字符串b(wold)没有完全包含在字符串a(helloworld)中 --- wold v.s. world。
有什么建议可以检查该字符串吗?
阅读文档:MDC String.indexOf :)
indexOf
返回匹配项的索引。这可能是 0(表示“在字符串开头找到”),而 0 是一个伪值。
如果未找到目标字符串,则 indexOf
将返回 -1(-1 是一个真值)。因此,测试逻辑需要根据这些返回代码进行调整。字符串已找到(在开头或其他位置):index >= 0
或 index > -1
或 index != -1
;字符串未找到:index < 0
或 index == -1
。
祝编程愉快。
if(a.indexOf(b) > -1)
。 当查找不到字符串时,indexOf
将返回-1
。.indexOf
会在没有找到匹配项时返回-1
,这是一个真值。你需要更明确地检查:
if (a.indexOf(b) != -1)
var a = "helloworld";
var b = "wold";
if(a.indexOf(b) > -1) {
document.write('yes');
} else {
document.write('no');
}
这是因为indexOf
在未找到值时返回-1:
if(a.indexOf(b) != -1) {
你可能想要使用这个
if(a.indexOf(b) != -1)