Имя: Пароль:
1C
 
Вопрос по регулярному выражению.
0 anders297
 
28.07.22
17:15
Подскажите, можно-ли регулярным выражением, из строки "Label Some text_" получить "Some text"?
Если да, то как?
1 vde69
 
28.07.22
17:18
2 Кирпич
 
28.07.22
17:20
Some text
3 lodger
 
28.07.22
17:38
4 anders297
 
28.07.22
17:58
(3) Спасибо
5 СеменовСемен
 
28.07.22
20:34
(4) там же наоборот label получается
6 TormozIT
 
гуру
29.07.22
06:50
Если использовать предполагается на 1С, то тестировать лучше сразу в нем же, т.к. у VBScript flavor есть много своих особенностей и тут сразу генератор кода 1С есть.
http://devtool1c.ucoz.ru/index/konstruktor_reguljarnogo_vyrazhenija/0-60
7 TormozIT
 
гуру
29.07.22
06:55
(0) Для твоей задачи подойдет например такое решение.
Label\s*(.+)_
https://i.imgur.com/BN7UBJc.png
8 TormozIT
 
гуру
29.07.22
06:58
Генератор кода 1С выдаст код:

Корень = "Label\s*(.+)_";
Многострочный = ЛОЖЬ;
ИгнорироватьРегистр = ИСТИНА;
RegExp = Новый COMОбъект("VBScript.RegExp");
RegExp.Global = Истина;
RegExp.Multiline = Многострочный;
RegExp.IgnoreCase = ИгнорироватьРегистр;
RegExp.Pattern = Корень;
Вхождения = RegExp.Execute(ТекстГдеИскать);
Для каждого Вхождение Из Вхождения Цикл
    Начало = Вхождение.FirstIndex;
    Длина = Вхождение.Length;
    Значение = Вхождение.Value;
    КореньЗначение = Вхождение.SubMatches(0);
КонецЦикла;

где в переменной КореньЗначение ты получишь найденный фрагмент
9 rozer76
 
29.07.22
07:55
(6) спасибо! пошел обновлять ИР )
10 TormozIT
 
гуру
29.07.22
08:07
(9) Это ж какая у тебя версия ИР, что там нет этого конструктора?
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан