|
Регулярные выражения "игнор спец символов" |
☑ |
0
fierylions
28.03.13
✎
12:56
|
Добрый день коллеги.
У объекта "VBScript.RegExp" есть ряд спец символов и если переедать строку вместе с ними:
"." - любой символ кроме перевода строки
"|" - Метасимвол обозначающий оператор ИЛИ
"\n" - символ перевода строки
"*" - любой символ повторяется 0 или больше раз
"?" -
То будит производится поиск согласно значению спец символа. Но вот что делать если у меня в строке присутствуют эти спец символы как не неотъемлемая часть самой строки? Т.е сама строка у меня стоит из слов и определенных символов например: "Слон =\n любит купаться" где "\n" - это тоже часть слово а не параметр.
Может есть какое то свойства отключения спец символов в строке и поиска по вхождению всех символов в строке?
Пример кода:
Процедура КнопкаВыполнитьНажатие(Кнопка)
RegExp = Новый COMОбъект("VBScript.RegExp"); // Объект для использования регулярных выражений
RegExp.IgnoreCase = Истина; //Игнорировать регистр
RegExp.Global = Истина; //Поиск всех вхождений шаблона
RegExp.MultiLine = Истина; //Многострочный
RegExp.Pattern = "слон";
Matches= RegExp.Execute("1слон 2слон 3слон");
ОчиститьСообщения();
Для Сч = 0 по Matches.Count()-1 Цикл
Match = Matches.Item(Сч);
Сообщить("" + Match.Value+ "");
КонецЦикла;
КонецПроцедуры
|
|
1
fmrlex
28.03.13
✎
13:05
|
Через Chr(КодСимвола)
|
|
2
fmrlex
28.03.13
✎
13:06
|
(1) А не. Тебе другое надо.
|
|
3
Широкий
28.03.13
✎
13:12
|
Экранировать
\n -> \\n
|
|
4
Широкий
28.03.13
✎
13:19
|
либо \Qслоны\E
|
|
5
fierylions
28.03.13
✎
13:20
|
(3) Спасибо.
|
|