假设我使用var content = this.innerHTML
获得以下内容:
w here </div>
使用indexOf
(或其他方式),我想检查第一个有“Space”,“&lt;”的位置或“&amp; nbsp”。
在这种情况下,它将是1(在“w”之后)。
我感到困惑的是,我如何检查具有这三种选择之一的第一个位置?我是否使用Do...while
检查个别“选项”?
答案 0 :(得分:2)
您可能正在寻找Regular Expression (Regex)和String#search方法。正则表达式有点学习,但我会解释这个示例代码。
您可以使用方括号表示一组字符,例如var startMedicine = new Date(startdate);
var stopMedicine = new Date(stopdate);
while(startMedicine <= stopMedicine){
console.log(startdate)
}
表示“匹配空格或小于号”。
如果要匹配一种模式或另一种模式,可以使用管道[ <]
来分隔可能性,这就是如何考虑匹配非中断空格HTML实体。
|
答案 1 :(得分:1)
您可以使用带有替换(|
)的正则表达式,这意味着“匹配其中一项”。这也会告诉你你发现了什么,如果它有用:
function check(str) {
var m = / |<| /.exec(str);
if (!m) {
console.log("Not found in '" + str + "'");
return;
}
console.log("'" + m[0] + "' found at index " + m.index + " in '" + str + "'");
}
check("w here </div>");
check("where </div>");
check("where</div>");