我正在尝试反句,我几乎已经完成了。我做了一个但是我有一个问题,每当有多个句点、问号或感叹号时,它们似乎也被计算在内
html
<input id="counter" type="text" />
<p id="sntnceCounter">Sentence(s):</p>
js
function myFunction() {
var counter = document.getElementById("counter").value;
var sentences = document.getElementById("sntnceCounter");
for (var i = 0; i < counter.length; i++) {
var currentCharacter = counter.substr(i, 1);
var nextCharacter = counter.substr(i + 1, 1);
if (
(currentCharacter == "." ||
currentCharacter == "?" ||
currentCharacter == "!") &&
(nextCharacter !== "." || nextCharacter !== "?" || nextCharacter !== "!")
) {
console.log((sntnceCount += 1));
}
}
sentences.innerHTML = "Sentence(s):" + sntnceCount;
}
我通过检查当前字符是句号、问号还是感叹号来计算句子,并确保如果有下一个字符则不计算在内。但它仍然算他们。我该如何解决这个问题?
抱歉英语不好
最佳答案
你应该改变
(nextCharacter !== "." || nextCharacter !== "?" || nextCharacter !== "!")
到
(nextCharacter !== "." && nextCharacter !== "?" && nextCharacter !== "!")
关于javascript - 在使用 substr 制作句子计数器时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59552399/