![](/img/trans.png)
[英]Javascript/jQuery check if string contains a word or occurrences of one of the optional words
[英]Check if the string contains an entire word from an array of words (jquery, javascript)
我正在將單詞過濾器導入文本輸入,我想檢查單詞數組中的整個壞單詞和字符串中的單詞之間是否匹配,我將舉一個例子這個...
壞話列表:
var bad_words = ['bad1', 'bad2', 'bad3'];
帶有文本輸入值的字符串:
var check_text = document.getElementById("text").value;
假設我的字符串中有這個詞(在這個例子中,我期望一個錯誤的答案):
Here is bad2222
假設我的字符串中有這個詞(在這個例子中,我期待一個真實的答案):
Here is bad2
對代碼稍作修正后,
這是為我解決了這個問題的代碼。謝謝 ritaj
<script type="text/javascript">
function check_val() {
var bad_words = ['bad1', 'bad2', 'bad3'];
var check_text = document.getElementById("text").value;
var error = 0;
if (check_text.split(' ').some(part => bad_words.includes(part))) {
error = error + 1;
}
if (error > 0) {
document.getElementById("bad_notice").innerHTML = "WARNING: Some Bad Words In Your Text";
}
else {
document.getElementById("bad_notice").innerHTML = "";
}
}
</script>
<div id="wrapper">
<textarea id="text" onKeyUp="check_val()" placeholder="Write Some Text Having Words 'bad1', 'bad2', 'bad3'"></textarea>
<p id="bad_notice"></p>
</div>
您可以使用反向技術來檢查它。
var bad_words = ['bad1', 'bad2', 'bad3']; const check_text = 'Here is bad222'; const found = bad_words.find(word => check_text.split(' ').find(s=>s===word)); if(found){ console.log("True") }else{ console.log("False") }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.