-1

У меня есть группа чисел ... кто-нибудь знает RegEx, который будет соответствовать и объединить следующее:

BG18.RZBB.9155.0123.4567
BG18 RZBB 9155 0123 4567 
BG18RZBB91550123456789
BG18-RZBB-9155-0123-4567

@ DavidPostil Я действительно не знаю, как объяснить это более понятно. Я просто пытаюсь написать REGEX, где я могу объединить эти цифры или точки, дефисы, пробелы и без пробелов строчные буквы и нули. Я добавлю в тестовую строку в REGEx101 запустить выражение, и я должен получить совпадение.

Мои усилия заключаются в следующем:

BG\d{2}[ -.]\d{4}[ -.]\d{3}[ -.]\d{4}[ -.]\d{4|\bCH\d{22}\b

1 ответ1

0

Как говорит @Davidpostill, ваш вопрос требует большего уточнения, потому что это зависит от языка программирования / сценариев. Но если вы использовали его через regex101.com как онлайн. Я скопировал это в поле ввода.

G18.RZBB.9155.0123.4567

BG18 RZBB 9155 0123 4567

BG18RZBB91550123456789

BG18-RZBB-9155-0123-4567

И ввел ваше регулярное выражение с некоторыми изменениями.

B*G\d{2}[ -.]\w{4}[ -.]\d{4}[ -.]\d{4}[ -.](\d{4})

Я думаю, что когда вы говорите о комбинате, вы, вероятно, хотите сделать их в качестве обратной ссылки. В этом случае вам нужно скобки.

Explaination:

B* , строка содержит символ "B" ноль или более раз.

G , строка следует с точным символом "G" только один раз.

\d{2} , строка следует из 2 цифр (0-9)

[ -.] , строка следует за любым из этих символов в квадратных скобках. ("", "-". ".")

..........

(\d{4}) , наконец, строка следует с 4 цифрами. И сгруппируйте это, чтобы получить доступ к нему в поле замены.

Таким образом, вы можете получить доступ к последним 4 цифрам в поле замены, набрав « $ 1 » (без кавычек).

Это не будет соответствовать только этой строке

BG18RZBB91550123456789

Потому что после "B * G\d {2}" эта часть регулярного выражения должна следовать с любым из символов "", "-", "." так что это нарушает совпадения на этом этапе

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .