0

首先,我不擅长 javascript 或 jquery,所以我想先在互联网上搜索,就像我总是为我不知道的事情做的那样。但是我找不到有关我的问题的任何信息,所以我想在这里寻求帮助,希望您能帮助我。

当我开始问这个问题时,这个网站告诉我分享我的研究,但我没有什么可以分享的。

我的问题是:“如何使用 javascript 或 jquery 找出一个特定单词在一个文本区域中写入了多少次?”

我不确定这是否可以用 javascript 或 jquery 来完成,这就是我写这两个的原因。

谢谢

4

3 回答 3

3

一个简单的概念验证:

$('#test').keyup(function(e){
    var v = $(this).val(), // the current value of the textarea,
        w = v.split(/\s/), // the individual words
        needle = 'img', // what you're looking for
        c = 0; // the count of that particular word
    for (var i=0,len=w.length;i<len;i++){
        // iterating over every word
        if (w[i] === needle){
        // if a given word is equal to the word you're looking for
        // increase the count variable by 1
            c++;
        }
    }
    // set the text of the 'output' element to be the count of occurrences
    $('#output').text(c);
});

JS 小提琴演示

参考:

于 2013-03-22T12:41:48.370 回答
2

尝试

var regex = new RegExp('\\b' + word + '\\b', 'gi');
var count = string.match(regex).length
于 2013-03-22T12:48:14.120 回答
2

您可以使用.match()匹配字符串中的正则表达式。

var str = "This my wordy string of words";
console.log(str.match(/word/g).length); // Prints 2 as it's matched wordy and words
console.log(str.match(/word\b/g).length); // Prints 0 as it has NOT matched wordy and words due to the word boundary

这些也是区分大小写的。您可能想研究RegExp 的其他选项。

于 2013-03-22T12:44:31.357 回答