Я думаю, вы хотите, чтобы ваш replace
звонок выглядел так:
replace(/\band\b/i,"AND \n")
(см. Ниже)
Таким образом, он не учитывает регистр (/i
) и принимает только отдельные слова, которые соответствуют and
, поэтому слова «sand» и аналогичные слова, содержащие «и» не совпадают, только «и» владеть.
РЕДАКТИРОВАТЬ : я поиграл с этим, основываясь на комментариях, и я думаю, этот рабочий пример - это то, что нужно.
Заменить событие onKeyUp
на onBlur
:
<textarea type="text" name="q" id="search" spellcheck="false" onblur='Validate();'></textarea></body>
Так что функция validate
запускается только тогда, когда пользователь покидает текстовое поле. Вы также можете запустить его onSubmit
.
Я также добавил глобальное переключение (g
) и необязательный конечный пробел (\s?
) в регулярное выражение:
replace(/\band\b\s?/ig,"AND \n")
Это вызывает ввод, как это:
sand and clay and water
преобразуется в это, когда вы покидаете текстовое поле:
sand AND
clay AND
water
Вероятно, вам следует проверить это на множестве других случаев.