Сопоставление строки в Python с использованием регулярного выраженияPython

Программы на Python
Ответить
Anonymous
 Сопоставление строки в Python с использованием регулярного выражения

Сообщение Anonymous »

У меня есть такая строка:

Код: Выделить всё

  ARAN22 SKY BYT and TRO_PAN
В приведенной выше строке первый алфавит может быть A, S, T или N, а два числа после RAN могут быть любыми двумя цифрами. Однако остальное всегда будет одинаковым, а последние три символа всегда будут иметь вид _PAN.
Итак, несколько возможностей строки:

Код: Выделить всё

  SRAN22 SK BYT and TRO_PAN
TRAN25 SK BYT and TRO_PAN
NRAN25 SK BYT and TRO_PAN
Поэтому я каждый раз пытался извлечь строку в Python, используя регулярное выражение, следующим образом:

Код: Выделить всё

import re

pattern =   "([ASTN])RAN" + "\w+\s+" +"_PAN"

pat_check = re.compile(pattern, flags=re.IGNORECASE)

sample_test_string = 'NRAN28 SK BYT and TRO_PAN'

re.match(pat_check, sample_test_string)
здесь строка может быть чем угодно, как в приведенных выше примерах.
Но это не работает, поскольку я не получаю имя строки (пример тестовая строка), что мне и нужно. Не уверен, что я делаю неправильно. Любая помощь будет очень признательна.

Подробнее здесь: https://stackoverflow.com/questions/740 ... sing-regex
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»