В регулярном выражении обозначить границу символа
Доброго времени суток, задача решение которой я не нашёл в интернете, вернее нашёл, но чуть не то.
Суть - нужно обозначить в регулярном выражении границу символа, тоесть найти точное вхождение например точки . или трех точек ...
Например:
var text = 'Lorem ...ipsum ... dolor sit amet, consectetur adipisicing elit. Libero, placeat... ...'; //то где ищем
var searching_text = '...'; // то что ищем с точным вхождением - вводит пользователь, может ввести слово или символ или набор символов или даже пробел что угодно
var temp_patt = new RegExp(/\W/, 'g'); //предварительно выражение для не слова (символов) чтобы их потом экранировать
var searching_text = searching_text.replace(temp_patt, '\\$&'); //символы экранирую, тоесть если в searching_text было ..., то стало \.\.\.
var pattern = new RegExp('\\b'+searching_text+'\\b', 'gi');
var matches = text.match(pattern);// и далее по коду
console.log(matches);
так вот все мы знаем что \\b обозначает границу СЛОВА, а мне нужно обозначить границу СИМВОЛА, например границу ...
Тоесть например слово sit находит, а троеточие ... второе по счету и последнее в переменной text не находит, как только их (точное вхождение) найти?
Разумеется вставлять \\s вместо \\b не вариант, ибо ... может быть в конце строки где нет пробела
У кого какие мысли?
|