如何使用 javascript 获取元素中的单词数?

How to get count of word in element using javascript?

您好,我想在我的 RTE(富文本编辑器)中使用 javascript 进行字数统计,也可以使用 jquery。但它不应该计算 html 标签和重复的空格。

示例文本:

<h1>Hello World</h1> <p> This is Good!!!</p> answer <h2>thanks! </h2>

javascript 应该只显示 7。

是否有任何 javascript 代码可以快速计算字数?

谢谢!

编辑

如果示例文本是这样的怎么办:<p>11 22&nbsp; 33</p><p>44</p>5<br></div> javascript 应该只显示 5。

首先需要获取元素的文本内容。您可以使用 text(). Then you need to remove additional space of text. trim() and replace(/[\s]+/g, " ") remove additional space in text. Now you can convert text to word using split() 方法获取元素的文本。

var length = $(".text").text().trim().replace(/[\s]+/g, " ").split(" ").length;
console.log(length);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="text">
    <h1>Hello World</h1> 
    <p> This  is   Good!!!</p> 
    answer 
    <h2>thanks! </h2>
</div>