неожиданный матч с регулярным выражением IGNORECASE - PullRequest
0 голосов
/ 20 июня 2019

У меня неожиданное совпадение с использованием следующего кода.

Я протестировал регулярное выражение на нескольких страницах в Интернете, включая параметр re.IGNORECASE, и никто не дал совпадения, но когда я его запускаю, я получаю совпадение на 'PA'

import re
def main():
    Names =['PA','SB','PA Solid','SB Solid']

    for Name in Names:
        print (Name)
        print (re.search(Name,'PartBody|Part_Body',re.IGNORECASE))

Это вывод, я не ожидаю совпадения ни с одним элементом в списке.

PA
<_sre.SRE_Match object at 0x7ff682876030>
SB
None
PA Solid
None
SB Solid
None

1 Ответ

0 голосов
/ 21 июня 2019

В вашем коде вы поменяли шаблон. Ваш шаблон должен выглядеть следующим образом: re.search (pattern, string [], flags])

names = ['PA','SB','PA Solid','SB Solid']
for name in names:
    print("Name:",name)
    print(re.search(r'PartBody|Part_Body', name,re.IGNORECASE))

Выход:

('Name:', 'PA')
None
('Name:', 'SB')
None
('Name:', 'PA Solid')
None
('Name:', 'SB Solid')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...