|
Помогите с регулярным выражением | ☑ | ||
|---|---|---|---|---|
|
0
location
naïve
03.11.22
✎
17:49
|
Добрый день. Подскажите написал такую конструкцию для компоненты RegEx, не сильно шибко разбираюсь как их правильно писать.
(\S{2}\d{2}-\d{6}) они нужны для отлова таких кодов АА00-000001 и вроде как работает, хотя и 0000-000001 тоже отлавливает. а вот если такая конструкция АБА00-000001 то получается БА00-000001 АА00-0001010 то получается АА00-000101 а такие вообще не должно брать. Помогите как правильно написать ее. |
|||
|
2
lodger
03.11.22
✎
18:01
|
(0) ты в регу должен добавить якори, чтобы рега понимала, что "слово" началось и закончилось.
иначе она всё правильно делает - нашла последовательность символов по маске |
|||
|
3
lodger
03.11.22
✎
18:16
|
если вставить флаг \b в конце маски, то конец номера ловится нормально
https://regex101.com/r/EqeClr/1 а в начале не хочет... |
|||
|
4
location
naïve
03.11.22
✎
18:26
|
(3) по вашему примеру да, в конце обрубает, спасибо. а что же в начале еще дописать?
|
|||
|
5
kittystark
03.11.22
✎
20:06
|
(0) \S{2} - это два непробельных символа, поэтому "и 0000-000001 тоже отлавливает"
если вначале нужны строго не 2 цифры после пробела - попробуй (\w{2}\d{2}-\d{6}) для кириллицы возможно вместо \w потребуется еще и [а-яА-Я] для полноты постановки вопроса - нужны примеры реальных строк, т.е. мне важно есть ли слева / справа что-либо или нет типа: "бла-бла АБА00-000001 тук-тук" или чистый "АБА00-000001" вообщем жду примеров - несколько как надо и несколько как НЕ надо, с учетом вышесказанного |
|||
|
6
Кирпич
03.11.22
✎
21:37
|
проходили же недавно
|
|||
|
7
Кирпич
03.11.22
✎
21:39
|
(?<!\S)\D{2}\d{2}-\d{6}(?=\s) |
|||
|
8
Кирпич
03.11.22
✎
21:42
|
вот шпаргалка. я там всегда смотрю.
https://ru.wikipedia.org/wiki/Регулярные_выражения |
|||
|
9
kittystark
04.11.22
✎
08:54
|
(8) вот пользуясь случаем, хочу спросить:
эти lookahead - lookbehind в 1С как использовать? я пока только VBScript.RegExp работал |
|||
|
10
Кирпич
04.11.22
✎
11:36
|
(8)так в 1с вроде нету такого
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |