3

我有字符串作为this is test for alternative. 我想找到的是for. 我知道我可以使用 来做到这一点alert(myString.indexOf("for")),但是我不想使用indexOf.

有什么想法/建议吗?

jsfiddle

同样,我只需要通过Javascript完成此操作。没有 jQuery .. 可悲的是:(

4

2 回答 2

4
.search()?

"this is test for alternative".search("for")
>> 13
于 2012-12-02T12:21:53.477 回答
1

您可以编写自己的 indexOf 吗?您在源字符串上循环,并在每个字符上检查它是否可能是您搜索的单词。

一个未经测试的版本给你一个想法:

function myIndexOf(myString, word) {
    var len = myString.length;
    var wordLen = word.length;
    for(var i = 0; i < len; i++) {
        var j = 0;
        for(j = 0; j < wordLen; j++) {
            if(myString[i+j] != word[j]) {
                break;
            }
        }
        if(j == wordLen) {
            return i;
        }
    }

    return -1;
}
于 2012-12-02T12:24:24.163 回答