如何计算JavaScript中给定字符串中的单词数?

使用正则表达式很容易计算javascript中给定字符串中的单词数。有一些步骤可以计算字数

遵循的步骤

我们知道一个句子或短语是由单词组成的,单词之间用空格隔开,并且在某些情况下单词之间用2个或更多空格隔开。开发人员在计算单词时必须注意所有这些要点。 

步骤1

排除字符串的开头和结尾空格。正则表达式的以下行将删除给定字符串的开始和结尾空格。

str.replace(/(^\s*)|(\s*$)/gi,"");

第2步

尝试将多个空间 缩小为一个空间

str.replace(/[ ]{2,}/gi," ");

第三步

尝试排除以开始间隔换行。

str.replace(/\n /,"\n");

完成上述所有步骤后,我们将获得一个带有单个空格的字符串。使用split()方法分割结果字符串时,单词将以逗号而不是空格连接。现在,使用length()方法,我们可以得到结果的字数,如以下示例所示。

示例

<html>
<body>
   <script>
      function countWords(str) {
         str = str.replace(/(^\s*)|(\s*$)/gi,"");
         str = str.replace(/[ ]{2,}/gi," ");
         str = str.replace(/\n /,"\n");
         return str.split(' ').length;
      }
      document.write(countWords("   Tutorix is one of the best E-learning   platforms"));
   </script>
</body>
</html>

输出结果

8