【问题标题】:Calculating sentence length and average words per sentence? | Javascript计算句子长度和每个句子的平均单词? | Javascript
【发布时间】:2017-12-13 06:02:34
【问题描述】:

这是我的第一个 Javascript 项目。我必须计算每个句子的单词、空格、句子和平均单词。我已经完成了代码的前两个步骤,并且已经完成了它,因此它可以计算单词和空格。我不太确定如何平均每个句子的单词或句子的数量。

对于每个句子的单词,我想我应该以某种方式使用函数中已经拥有的单词计数的值并将其除以它的总和,但我不确定如何设置它。对于第一句话,我对如何做到这一点一无所知。我不知道我是否可以扫描输入中的句点/问号/感叹号?我已经查过了,找不到任何我正在寻找的足够具体的东西。任何指针?这是代码: HTML

<form name="myform" method="post" action="">
<textarea name="inpString" cols="49" rows="4"></textarea>
<br />
<input type="button" name="Count" value="Calculate" onClick="countNoOfWords();" />  
<input name="noofwords" type="text" value="" size="6" />
<input name="noofspaces" type="text" value="" size="6" />
</form>

Javascript

function countNoOfWords() {

 document.myform.noofwords.value = document.myform.inpString.value.split(' ').length + " words";
 document.myform.noofspaces.value = document.myform.inpString.value.split(" ").length - 1 + " spaces";

}

非常感谢,我真的很感激。如果有任何问题,请告诉我。

我现在想我可以使用 if 语句来查找句点/问号/感叹号,然后返回该值以查找句子的数量。不过我真的不知道。

【问题讨论】:

  • 嗨 Grim。你期望的平均值,是单词数/句子数??
  • @grim 我通过在记事本中创建示例页面来尝试您的代码,它似乎按照您的描述工作。我看到了表格,当我在其中输入以空格分隔的单词时,它会给出正确的字数和空格。
  • @SunilHari 我正在寻找一个句子中的平均单词数。所以不知何故,我必须先设置它来识别某事是否是一个句子,但我真的很难弄清楚!
  • @nocturns2 是的,我目前拥有的代码有效。我正在询问有关如何查找句子中平均单词数量以及输入中存在多少句子的提示。我不知道该怎么做。
  • 反对票是什么?我的问题不清楚吗? ):

标签: javascript html


【解决方案1】:

要获取句子的数量,请查看 JavaScript 中的Regular Expressions,它可以让您将文本拆分为句子数组:

function getNoOfSentences() {
    var val = document.myform.inpString.value;
    var sentences = val.split(/[\.!?]+/); // split on punctuation
    return sentences.length - 1; // subtract 1 to account for last sentence
}

获得句子后,您可以通过将总词数除以句子数来计算每个句子的平均词数:

var averageWords = totalWords / numSentences;

【讨论】:

  • 这帮助很大,谢谢!并感谢您提供资源(:
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-06-12
  • 2015-08-18
  • 1970-01-01
  • 2012-02-02
  • 1970-01-01
  • 2016-05-21
相关资源
最近更新 更多