Bootstrap позволяет использовать стиль с помощью содержимого данных:
Пример: https://silviomoreto.github.io/bootstrap-select/examples/
Плюс - это специальный символ в регулярных выражениях, поэтому, чтобы выразить символ как данные, вы должны экранировать его, поставив перед ним префикс \
.
var reg = /d\+1/;
Вам, вероятно, нужно экранировать знак плюс:
var pattern = /d\+1/
Знак плюс используется в регулярных выражениях для обозначения 1 или более символов подряд.
\-\.\/\[\]\\ **always** need escaping
\*\+\?\)\{\}\| need escaping when **not** in a character class- [a-z*+{}()?]
Но если вы не уверены, это не вредно, если вы включаете escape перед символом, не состоящим из слов, который вы пытаетесь найти.
Цифра или буква - это символ слова, экранирование цифры относится к предыдущему совпадению, экранирование буквы может соответствовать непечатаемому символу, например, новая строка (\ n), символ табуляции (\ t) или граница слова (\ b) или набор символов, как любой символ слова (\ w), любой несловесный символ (\ W).
Не избегайте буквы или цифры, если только вы не имеете это в виду.
Вы должны использовать escape-символ \ перед + в вашем шаблоне. например. \ +
Это должно быть var pattern = '/d\\+1/'
.
Строка будет экранирована '\\'
как '\'
('\\+'
-> '\+'
), поэтому объект регулярного выражения инициируется с /d\+1/
Просто обратите внимание,
\
должно быть \\
в строке шаблона RegExp, RegExp("d\+1")
не будет работать и Regexp(/d\+1/)
получит ошибку.
var string = 'abcd+1';
var pattern = 'd\\+1'
var reg = new RegExp(pattern,'');
alert(string.search(reg));
//3