Имя: Пароль:
1C
1С v8
СтрНайти и найти слово целиком
0 John83
 
21.02.23
15:30
Возможно ли реализовать поиск что-то вроде СтрНайти("№123456", "123") = 0 ?
Как во встроенном поиске есть "слово целиком".
В начале слово может быть и номер и пробел и все что угодно, в конец точно так же.
1 NorthWind
 
21.02.23
15:35
Возможно, но надо написать :)
2 NorthWind
 
21.02.23
15:39
на самом деле не особо-то это сложно. СтрНайти () же возвращает позицию вхождения, положим, N. Смотрим, чтобы символы N-1 и (N+СтрДлина (СтрокаПоиска)+1) были пробелами или знаками препинания. Если да, значит, все, нашли. Если нет, то берем в качестве исходной строки строку от (N+СтрДлина (СтрокаПоиска)+1) до конца и повторяем поиск уже в ней. И так пока не найдем или пока не вернет 0 - значит, такой подстроки нет.
3 John83
 
21.02.23
15:39
(1) хотя бы какое направление?
4 NorthWind
 
21.02.23
15:42
(3) -> (2). (N+СтрДлина (СтрокаПоиска)+1) читать как (N+СтрДлина (СтрокаПоиска)).
5 polosov
 
21.02.23
15:43
(3) Регулярные выражения
6 NorthWind
 
21.02.23
15:43
либо да, можно регулярками сделать
7 TormozIT
 
гуру
21.02.23
22:21
В ИР реализовано в ирОбщий.СтрНайтиСловоЛкс
Независимо от того, куда вы едете — это в гору и против ветра!