[英]Check a string contain how many word in javascript
我想檢查一個字符串中有多少個單詞
例如。
asdsd sdsds sdds
3個字
問題是,如果兩個子字符串之間存在多個空格,則結果不正確
這是我的程序
function trim(s) {
return s.replace(/^\s*|\s*$/g,"")
}
var str = trim(x[0].value);
var parts = str .split(" ");
alert (parts.length);
如何解決問題? 感謝幫助
var parts = str .split(" ");
parts = parts.filter(function(elem, pos, self) {
return elem !== "";
});
請嘗試這個。 確保您使用的是最新的瀏覽器以使用此代碼。
使用split方法很容易找出來,但是您需要弄清是否有特殊字符。 如果您的字符串中沒有特殊字符,那么最后一行就足夠了。
s = document.getElementById("inputString").value;
s = s.replace(/(^\s*)|(\s*$)/gi,"");
s = s.replace(/[ ]{2,}/gi," ");
s = s.replace(/\n /,"\n");
document.getElementById("wordcount").value = s.split(' ').length;
function countWords(){
s = document.getElementById("inputString").value;
s = s.replace(/(^\s*)|(\s*$)/gi,"");
s = s.replace(/[ ]{2,}/gi," ");
s = s.replace(/\n /,"\n");
document.getElementById("wordcount").value = s.split(' ').length;
}
嘗試:
function trim(s) {
return s.replace(/^\s*|\s*$/g,"")
}
var regex = /\s+/gi;
var value = "this ss ";
var wordCount = value.trim().replace(regex, ' ').split(' ').length;
console.log( wordCount );
甚至更短的模式,請嘗試如下操作:
(\S+)
而正則表達式引擎返回的匹配數將是您想要的結果。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.