Regex с 6 цифрами рядом друг с другом - PullRequest
0 голосов
/ 01 декабря 2018

У меня может быть этот текст:

words on this line maybe numbers like 4n1me
words here 123456 other words here.

Я хочу получить номер 123456, а не 4 и 1 из 4n1me.это регулярное выражение [+ -]? \ d + (?:. \ d +)?с пробелом до и после находит мое 123456 число

проблема в том, что в моем номере есть пробелы вроде 1 2 3 4 5 6, он получает только первый 1-значный символ, как я могу изменить регулярное выражение, чтобы игнорировать пробелыи вернуть 1 2 3 4 5 6?

, если у меня есть 123 456, я хочу найти 123 456 и после того, как смогу удалить пробел, чтобы использовать цифры.

рядом всегда будет 6 цифр.

Ответы [ 2 ]

0 голосов
/ 01 декабря 2018

Вы можете использовать следующее регулярное выражение:

 [+-]?\b(\d[ ]*){6}

Регулярное выражение создает группу, которая соответствует digit, за которой следует any number of Spaces (необязательно).

Эта группа соответствует 6 times.

Соответствует, только если между цифрами есть пробелы, а не буквы.

0 голосов
/ 01 декабря 2018

Вы можете использовать это регулярное выражение с границами слов с обеих сторон:

[+-]?\b\d+(?: +\d+)*\b

Демонстрация RegEx

Подробности RegEx:

  • [+-]?: необязательное совпадение + или - в начале
  • \b: подтверждение границы слова
  • \d+: сопоставление 1+ цифр
  • (?: +\d+)*: совпадение с 1+ пробелом, за которым следуют 1+ цифр.Совпадение 0 или более из этого набора.
  • \b: установить границу слова
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...