Регулярные выражения для платформы 1С:Предприятие 8.3 (AddIn Native API)
Поддерживаемые платформы:
Linux (x86, x86-64)
Windows (x86, x86-64)
Подключение компоненты на клиенте:
&НаКлиенте
Асинх Функция ПодключитьВК ()
результат = Новый Структура("Успех, ТекстОшибки" , Истина , "" );
путьФайла = "ОбщийМакет.РегулярныеВыраженияВК" ;
имяВК = "РегулярныеВыражения" ;
подключено = Ждать ПодключитьВнешнююКомпонентуАсинх(
путьФайла,
имяВК, ТипВнешнейКомпоненты.Native);
Если подключено = Ложь Тогда
Ждать УстановитьВнешнююКомпонентуАсинх(путьФайла);
подключено = Ждать ПодключитьВнешнююКомпонентуАсинх(путьФайла, имяВК, ТипВнешнейКомпоненты.Native);
Если подключено = Ложь Тогда
результат.Успех = Ложь ;
результат.ТекстОшибки = "Ошибка подключение внешней компоненты" ;
КонецЕсли ;
Возврат результат;
КонецЕсли ;
Возврат результат;
КонецФункции
&НаКлиенте
Асинх Функция ЗаменитьТекстАсинх (Знач исходныйТекст , Знач шаблонВыражения , Знач текстЗамены , Знач искатьВсеСоответствия = Ложь )
результатПодключения = Ждать подключить(
"ОбщийМакет.РегулярныеВыраженияВК" ,
"РегулярныеВыражения" );
Если результатПодключения.Успех = Ложь Тогда
сообщение = Новый СообщениеПользователю;
сообщение.Текст = результатПодключения.ТекстОшибки;
сообщение.Сообщить();
Возврат ;
КонецЕсли ;
РегВыраженияВК = Новый ("Addin.РегулярныеВыражения.RegExp" );
результатЗамены = Ждать РегВыраженияВК.ЗаменитьТекстАсинх(
исходныйТекст,
шаблонВыражения,
текстЗамены,
искатьВсеСоответствия);
Возврат результатЗамены.Значение;
КонецФункции
&НаКлиенте
Асинх Процедура Тест ()
ожидаемыйРезультат = "123-456-7890" ;
результатЗамены = ЗаменитьТекстАсинх("1234567890" , "([0-9]{3})([0-9]{3})([0-9]{4})" , "$1-$2-$3" );
сообщение = Новый СообщениеПользователю;
результатТеста = ? (результатЗамены = ожидаемыйРезультат, "Успех" , "Неудача" );
сообщение.Сообщить();
КонецПроцедуры