2016-08-18 84 views
2

有人可以幫我用這些正則表達式嗎?這些正則表達式如何計算HTML中的單詞?

wordCountTemp = wordCountTemp.replace(/(^\s*)|(\s*$)/gi,""); 
wordCountTemp = wordCountTemp.replace(/[ ]{2,}/gi," "); 
wordCountTemp = wordCountTemp.replace(/\n /,"\n"); 

我不明白他們是如何工作的。以下是完整的代碼。

function() { 
    var wordCountTemp = $("#content").text(); 
    wordCountTemp = wordCountTemp.replace(/(^\s*)|(\s*$)/gi,""); 
    wordCountTemp = wordCountTemp.replace(/[ ]{2,}/gi," "); 
    wordCountTemp = wordCountTemp.replace(/\n /,"\n"); 
    var wordCount = wordCountTemp.split(' ').length; 
    if (wordCount>3000) return "3k+"; 
    else if (wordCount>2500) return "2.5k-3k"; 
    else if (wordCount>2000) return "2k-2.5k"; 
    else if (wordCount>1500) return "1.5k-2k"; 
    else if (wordCount>1100) return "1.1k-1.5k"; 
    else if (wordCount>800) return "800-1.1k"; 
    else if (wordCount>500) return "500-800"; 
    else if (wordCount>200) return "200-500"; 
    else return "<200"; 
} 

非常感謝!

+1

什麼是問題,你的目標是什麼,你碰到什麼問題,你得到了什麼結果? – Hodrobond

+0

@ Toni2708您可能會覺得這有幫助http://eloquentjavascript.net/09_regexp.html – mrbubbles

+0

嗨@Hodrobond我只是想找出什麼是匹配的/(^ \ s *)|(\ s * $)/ gi,/ [] {2,}/gi或/ \ n /,「\ n」。感謝指導@ mrbubbles!也許你們可以告訴我我是如何得到這個div.mk-main-wrapper-holder:nth-​​child(3)> div:nth-​​child(1)> div:nth-​​child(1) var wordCountTemp = $(「#content」)。text();線。謝謝 – Toni2708

回答

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

如果它開始^任何*空白\s OR |如有*空白\s到最後$沒事""更換。

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

在至少兩個或更多{2,}連續的空格[ ],替換與一個空間" "

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

的換行\n和空間,只是一個換行符替換\n。這就像在EOL修剪。

所以簡而言之,這些正則表達式正在清理任何草率的白色空格,以確保準確的字數。

相關問題