Javascript搜索开始于End &停在另一条绳子上

Javascript Search for String Starting at End & Stopping at Another String

本文关键字:一条 开始 搜索 End Javascript      更新时间:2023-09-26

我有一个这样的字符串:

The planet is very big and the planet is heavy.

使用Javascript,我想搜索一个字符串从末尾开始,并停止在另一个字符串。

一个例子是,从单词heavy开始,搜索单词planet,但在单词big处停止。在这个例子中,planet的第二个实例是我想要的,而不是第一个。因此,如果在bigheavy之间没有planet的实例,那么我想产生一个indexOf -1。

谢谢。

编辑:我可以通过在我想要的单词上分割我的字符串来完成这一点,而不是搜索我的文本数组的第二个元素,但我想知道是否有一个函数来做到这一点。

您可以拆分单词"big",然后只拆分最后一个子字符串组中的lastIndexOf。

IE:

function foo(input,search,stopWord){
    //Split the input
    var arr=input.split(stopWord);
    //return only from last substring group
    return arr[arr.length-1].lastIndexOf(search);
}
foo("The planet is very big and the planet is heavy.","planet","big");

这会给你期望的结果吗?

Run

var startIdx = string.lastIndexOf('big');
var grabIdx = string.lastIndexOf('planet');
(startIdx < grabIdx)?grabIdx: -1)