我有两个变量:string
和word
。如果存在,我需要获得string
中word
的开始和结束位置,例如:
string = "Hello world"
word = "Hello"
// position = [0, 4]
或
string = "hello world Hello"
word = "Hello"
// position = [0, 4]
我想不出一种方法来规划这样的功能,我认为在这种情况下没有内置的功能有用,有什么想法吗?
indexOf
并将子字符串长度添加到找到的索引中会得到您想要的。
string = "Hello world"
word = "Hello"
const index = string.indexOf(word);
if (index !== -1) {
const endIndex = index + word.length - 1;
console.log(index, endIndex);
}
如果您希望"hello world Hello"
和"Hello"
生成0
和4
,那么听起来您需要先降低字符串的大小写。
string = "hello world Hello"
word = "Hello"
const index = string.toLowerCase().indexOf(word.toLowerCase());
if (index !== -1) {
const endIndex = index + word.length - 1;
console.log(index, endIndex);
}