wyrażenia regularne

0

Hej, czy ktoś ma pomysł jak:
1.Pozbyc sie ze stringa 'By(author)'
2.Wstawic spacje pomiedzy imie i nazwisko
3. pozbyć sie wszystkiego co nastepuje po "Illustradedby" wlacznie.

Prubowałem bawić się wyrażeniami regularnymi ale coś nie dziala tak jak bym sobie tego życzył
zarowno re.search jak i re.sub

napis='By(author) BenBrooks,Illustratedby QuintonWinter'.

1
import re

napis='By(author) BenBrooks,Illustratedby QuintonWinter'
regularExpression = "By\(author\) ([A-Z]{1}.+?)([A-Z]{1}.+?),Illustratedby.+"

result = re.findall(regularExpression, napis)

for imieNazwisko in result:
	print (imieNazwisko[0] + " " + imieNazwisko[1])

https://ideone.com/8nhn1g

Wyrażenie zapisuje do tablicy wynikowej tylko "słowa" w normalnych nawiasach zawarte w wyrażeniu. Imię i nazwisko zaczynają się z dużych liter, więc na tej podstawie można je rozdzielić. Znak zapytania powoduje, że .+ nie złapie nam wszystkiego do końca tekstu, tylko będzie respektował następne elementy wyrażenia.

1

Dzięki wielkie za szybką dopowiedź. Jutro usiądę i przeanalizuje.

1 użytkowników online, w tym zalogowanych: 0, gości: 1