Как удалить строки, которые не содержат номера с помощью (регулярное обновление)? - PullRequest
0 голосов
/ 27 марта 2019

У меня уже есть регулярное выражение (?:[a-zA-Z\d]+(?:[/][a-zA-Z\d]+)+), которое соответствует:

cb / 09/06233 / полный 13/02513 / MAJOR ADA / 333

но также совпадает некорректно

промышленные / склад

Как я могу обновить свое регулярное выражение, чтобы исключить фразы без цифр?

Я пытался (?=\d) добавить что-то внутри, но безрезультатно.

1 Ответ

2 голосов
/ 27 марта 2019

Вы можете использовать положительный прогноз (?=[^\d\s]*\d), чтобы утверждать, что справа не пробел или цифра.

Для этого вы можете использовать класс символов [^\d\s]*, чтобы сопоставить не цифру или символ пробела, а квантификатор для повторения этого 0+ раз. Затем сопоставьте цифру \d.

(?=[^\d\s]*\d)(?:[a-zA-Z\d]+(?:/[a-zA-Z\d]+)+)

Regex demo

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...