Форум программистов, компьютерный форум, киберфорум
JavaScript: RegExp
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/15: Рейтинг темы: голосов - 15, средняя оценка - 4.80
0 / 0 / 1
Регистрация: 06.07.2015
Сообщений: 27

Переменная в регулярном выражении и класс \b

30.08.2017, 00:14. Показов 2916. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите пожалуйста синтаксис для использования переменной в регулярном выражении и класса \b для границы слова.
Я понял, как переменную использовать с флагом и без. А как переменную и класс записать? В интернете не смог ничего найти именно с классом.
Например хочу найти в строчке "ой все, хватит" частицу ой.
JavaScript
1
2
3
Var str = "ой все хватит"
var a="ой"
Return str.match(a,"i") //пусть будет. С флагом i.
А как с классом \b? Например захочется мне найти именно частицу ой, а не сочетание букв в строке "какОЙ герОЙ. Ой ой ой"
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.08.2017, 00:14
Ответы с готовыми решениями:

Replace, переменная в регулярном выражении
Здравствуйте, помогите разобраться. Для примера: var string = 'test222'; var pattern = /test{1,}/; var...

Пробел в регулярном выражении
Здравствуйте. В регулярках не шарю абсолютно. Есть такая строка: input.value = input.value.replace(//g, ''); Оставляет только...

Проверка цифр в регулярном выражении
Добрый день! В текстовом поле должны вводиться от 1 до 3 цифр. причем первая цифра не 0. Если вводятся символы не удовлетворяющие этому...

1
0 / 0 / 1
Регистрация: 06.07.2015
Сообщений: 27
01.09.2017, 13:16  [ТС]
В общем, спустя двое суток мучений я нашел в чем проблема и как ее решить. Надеюсь кому-то это поможет в будущем.
Для того, чтобы использовать переменную в регулярном выражении, надо использовать конструктор регулярного выражения, а именно: var regexp = new RegExp(name, "i"). Чтобы использовать метасимвол: var regexp = new RegExp("\\b("+name+")\\b", "i"), но вся проблема в том, что \b работает для "алфавитно-цифровой символов" в это понятие входят только ASCII, проще говоря только английские слов, для которых выше записанная регулярка будет работать как ей и полагается, но для русских слов работать она не будет, по этому приходится извращаться с наборными классами символов, а именно вот так:
JavaScript
1
2
3
4
5
var str ="какОЙ герОЙ. Ой ой ой"
var name ="ой";
var re = new RegExp("(^|[^а-яё])("+name+")([^а-яё]|$)", "i");
arr=str.match(re);
document.write(arr[0]);//запишется первая частица Ой встречающиеся в строке.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
01.09.2017, 13:16
Помогаю со студенческими работами здесь

Разобраться в регулярном выражении
"(?<=<img+?src=\" )+" вон оно я не могу понять что значит и \" )+ ...

Запуталась в регулярном выражении
Задание - Проверить что заданная строка – валидный домен (состоит из нескольких поддоменов, разделенных точкой. Поддомен может содержать...

Ошибка в регулярном выражении
Есть текст $text = '1#{\b 37\par К88\par \b0 \b Акулова, З. М. \b0 \par \tab Куда пойти учиться? : Информ. - реклам. справ / З. М....

Ошибка в регулярном выражении
Составляю регулярное выражение для перевода url из текста, в активную ссылку. $text =...

Парсинг в регулярном выражении
Добрый день. Нужна помощь в регулярном выражении. Как получить содержимое тегов h1, h2 и т.д.? Пробую так: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru