Регулярное выражение Python в этом конкретном формате строки

#regex

#Регулярное выражение

Вопрос:

Я пытаюсь извлечь из строки следующее:

Исходная строка: M 1,81 PRT 25 12 1988

Я хочу извлечь: 25 12 1988

В основном 2numbers|space|2numbers|space|4numbers

Я изо всех сил пытаюсь это сделать, пока я добрался до этого, но мой небольшой опыт regex не позволяет мне закончить его.

Пробовал с этим регулярным выражением:

 (?<!S)w (?!S)
  

Комментарии:

1. Попробуйте (?<!S)d{2} d{2} d{4}(?!S)

Ответ №1:

Это вернет захваченные данные в виде группы и будет работать независимо от используемого пробельного символа.

 (d{2}sd{2}sd{4})
  

Перейдите к regex101.com и попробуйте это сделать. Это хороший способ построения ваших выражений.

Ответ №2:

Это довольно просто:

(d{2} d{2} d{4})

Довольно понятно. d означает цифру и {N} означает количество.

Комментарии:

1. Я не очень разбираюсь в regrex, но разве вы не забыли скобки () ?

2. Конечно, если вам нужно иметь группу захвата, скобки должны быть там!