Regular Expressions Lab - Match full name

Здравейте,

 

Забелязах нещо интересно при въпросната задача. Кодът, който написахме заедно с Й. Джамбазов в лекцията работи и Джъдж дава 100/100 точки.

 

import re

pattern = r"\b[A-Z][a-z]+\s[A-Z][a-z]+\b"
text = input()

result = re.findall(pattern, text)

print(" ".join(result))

 

Но при отварянето на детайлите за тестовете се вижда, че един от тях не излиза и въпреки това получаваме пълните точки.

Test input - Ivan Ivanov, Ivan ivanov, ivan Ivanov, IVan Ivanov, Test Testov, Ivan    Ivanov

Expected output - Ivan Ivanov Test Testov

Your output - Ivan Ivanov Test Testov Ivan    Ivanov

 

Примерното решение от лекцията е следното:

import re

pattern = r"\b[A-Z][a-z]+ [A-Z][a-z]+\b"
text = input()

result = re.findall(pattern, text)

print(" ".join(result))

 

където "\s" е заместено с единичен спейс и предвид условието на задачата това е правилният вариант.