целое соответствие слова в JavaScript

Я использую JavaScript на своей веб-странице. Я пытаюсь искать единственное целое слово через текстовое поле. Скажите, что я ищу: 'меня', я должен найти весь 'я' в тексте, но не найти, что 'memmm' на говорят.

Я использую поиск JavaScript ('мое regex выражение') для выполнения текущего поиска (без успеха).

Спасибо!

Править: После нескольких предложений использовать переключатели \b [которые, кажется, не работают], я отправляю пересмотренное объяснение своей проблемы:

amm, от некоторой причины это не делает seemt, чтобы сделать приемы. Примите следующий искомый текст JavaScript:

<script type='text/javascript'>
var lookup = '\n\n\n\n\n\n2    PC Games        \n\n\n\n';
lookup  = lookup.trim() ;
alert(lookup );
                var tttt = 'tttt';
                alert((/\b(lookup)\b/g).test(2));

</script>

Движущиеся строки важны

32
задан Wiktor Stribiżew 11 December 2015 в 21:25
поделиться

3 ответа

Для использования динамического регулярного выражения смотрите мой обновленный код:

new RegExp("\\b" + lookup + "\\b").test(textbox.value)

Ваш конкретный пример является обратным:

alert((/\b(2)\b/g).test(lookup));

Regexpal

Regex Object

45
ответ дан 27 November 2019 в 20:14
поделиться
<script type='text/javascript'>
var lookup = '\n\n\n\n\n\n2    PC Games        \n\n\n\n';
lookup  = lookup.trim() ;
alert(lookup );
                var tttt = 'tttt';
                alert((/\b(lookup)\b/g).test(2));

</script>

Сложно сказать, что вы здесь делаете. Что должна делать переменная tttt ?

В какой строке вы пытаетесь выполнить поиск? Вы пытаетесь найти 2 в строке lookup ? Тогда вам нужно:

/\b2\b/.test(lookup)

Следующее из вашего регулярного выражения создает регулярное выражение, состоящее из границы слова, за которой следует строка "lookup" (не значение, содержащееся в переменной ] lookup ), за которым следует граница слова. Затем он пытается сопоставить это регулярное выражение со строкой «2» , полученной преобразованием числа 2 в строку:

(/\b(lookup)\b/g).test(2)

Например, следующее возвращает true :

(/\b(lookup)\b/g).test("something to lookup somewhere")
2
ответ дан 27 November 2019 в 20:14
поделиться

Используйте утверждение границы слова \b:

/\bme\b/
22
ответ дан 27 November 2019 в 20:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: