Вы можете сделать без учета регистра регулярное выражение со всеми словами, как это:
RegExp("\\b(?:" + specialwords.join("|") + ")\\b", "i")
то вы можете использовать его против каждого слова. Я не уверен, что вы делаете со словами после того, как вы их идентифицируете ... Я предполагаю с целью моего фрагмента кода, что вы игнорируете их из текста.
var specialwords = ['hello','world','pizza']; //special words here
var swr = RegExp("\\b(?:" + specialwords.join("|") + ")\\b", "i")
$('#TextBox').keydown(function() {
var text = $(this).val();
text = text.split(" ");
var newtext = [];
for(var i=0; i<text.length; i++){
if (!text.match(swr)) {
newtext.push(text)
}
}
$("#check").html(newtext.join(" "));
});
Используя \b
как разделитель слов в регулярном выражении можно также проверить весь текст, не разбивая слова, если вы хотите.
var specialwords = ['hello','world','pizza']; //special words here
var swr = RegExp("\\b(?:" + specialwords.join("|") + ")\\b", "i")
$('#TextBox').keydown(function() {
var text = $(this).val();
var newtext = text.replace(swr, "");
$("#check").html(newtext);
});
Какая у вас задание? Я попытался ответить на ваш вопрос ниже, но я не совсем уверен, что вы пытаетесь сделать. Не могли бы вы уточнить? – royhowie
@royhowie, чтобы проверить введенное слово, будь то прописные, строчные или комбо. – X10nD
Итак, вы хотите знать, имеет ли текстовое поле данное слово, независимо от случая? – royhowie