gpt4 book ai didi

用于计算单词数的 javascript 正则表达式

转载 作者:行者123 更新时间:2023-12-02 19:38:50 25 4
gpt4 key购买 nike

我得到了这段代码,用于计算 html 编辑器中的单词数。

(providing htmlData has already been set)
var rawWords = htmlData.replace(/<(?:.|\s)*?>/g, '')
.replace(/(\r\n|\n|\r)/gm,' ');
var filteredWords = rawWords.replace(/\[([^\]]+)\]/g,'')
.replace(/\s+/g, " ")
.replace(/^\s+|\s+$/g, "");

据我了解,第一行删除 html,然后删除任何返回。

下一行删除括号中的所有内容(这是为了在不影响字数的情况下添加注释),然后删除多余的空格

但是如果我输入:

Apple


Charlie

Tom

它给我的字数是 6,而不是 3。知道为什么吗?我不擅长正则表达式!!!!

非常感谢

最佳答案

试试这个,很简单,只需分割空格/数字,然后对数组进行计数即可。

window.onload = function() {

// get string as text
var text = document.body.innerText;

// replace all non letters (so we don't count 1 as a word)
text = text.replace(/[^a-zA-Z\s]/g, '');

// split on whitespace
var words = text.split(/[\s]+/);

// output -- 52
console.log('numwords', words, words.length); // numwords 52
}

完整示例如下:

<html>
<head>
<script type="text/javascript">// script</script>
</head>
<body>

a b c d e f g
1 1 1 1 1 1 1




the quick brown fox jumped over the lazy dog.
the quick brown fox jumped over the lazy dog.
the quick brown fox jumped over the lazy dog.<br><br><br><br><br>
the quick brown fox jumped over the lazy dog.
the quick brown fox jumped over the lazy dog.

</body>
</html>

关于用于计算单词数的 javascript 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10653305/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com