Имя: Пароль:
1C
1С v8
Регулярные выражения "игнор спец символов"
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) Спасибо.
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс