Regex для ключа продукта - PullRequest
       0

Regex для ключа продукта

0 голосов
/ 11 марта 2010

Я пытаюсь сделать регулярное выражение, которое покажет все ключи продукта со значением #####-#####-#####-#####-#####

это регулярное выражение, которое я создал

[A-Z0-9]{5}-[A-Z0-9]{5}-[A-Z0-9]{5}-[A-Z0-9]{5}-[A-Z0-9]{5}

почему-то просто не работает.

Ответы [ 4 ]

2 голосов
/ 11 марта 2010

Какой инструмент регулярных выражений вы собираетесь использовать? grep, egrep, sed, perl и т. д.?

Также вы можете разрешить использование строчных букв:

Используя egrep и cygwin, это работает: '^([A-Za-z0-9]{5}-){4}[A-Za-z0-9]{5}$'

Но, как указывает Хайман, {} недействительно в каждом наборе регулярных выражений (поэтому я и использовал egrep, а не grep).

1 голос
/ 17 ноября 2016

Этот работал для меня в Expresso:

([A-Za-z0-9] {5} - [A-Za-z0-9] {5} - [A-Za-z0-9] {5} - [A-Za-Z0- 9] {5} - [A-Za-z0-9] {5})

1 голос
/ 11 марта 2010

Вы должны закрепить шаблон:

/\A[A-Z0-9]{5}-[A-Z0-9]{5}-[A-Z0-9]{5}-[A-Z0-9]{5}-[A-Z0-9]{5}\z/
0 голосов
/ 27 июля 2017
(([a-z0-9]{3,8}-){1,4}[a-z0-9]{3,8}(\s|,)|([A-Z0-9]{3,8}-){1,4}[A-Z0-9]{3,8}(\s|,))

Это работает для меня. все символы в нижнем регистре или все символы в верхнем регистре. пути должны быть длиной от 3 до 8 символов / цифр и разделяться минусом. первый шаблон будет выполнять от 1 до 4 повторений, последний шаблон с такой же структурой не должен иметь минус в конце. За полным ключом следует запятая или любой пробел, включая newLine, tab, пробел, ничего.

[a-z0-9]{3,8}- = все нижние символы + все цифры от 3 до 8 раз, за ​​которыми следует минус

([a-z0-9]{3,8}-){1,4} = выше правила от 1 до 4 раз

[A-Z0-9]{3,8}- = весь верхний символ + все цифры от 3 до 8 раз, за ​​которыми следует минус

| = ИЛИ -> только одно из правил должно быть истинным

(\s|,) = wollowed ничем, пробелом, табуляцией или символом новой строки или запятой

Если вы знаете, что есть только верхние символы, вы можете удалить это правило для нижних символов, поэтому у вас осталось:

([A-Z0-9?]{3,8}-){1,4}[A-Z0-9?]{3,8}(\s|,)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...