moje dane:przechwytywania skomplikowane nazwy
Caterina Guonçallvez braçeyro
Francisco Ro[dr]í[gueJz luveyro
Johao de Miranda calçeteyro
Lucas Martinz Mal-Cuzinhado, braçeyro
Francisquo d[e] Arruda braçeyro
Francisquo de Miranda braçeyro
-pierwsze Nazwisko
-pierwsze imię nazwisko z brakets i J (brakets OCR Recognition)
-pierwsze Nazwisko z myślnikiem
-pierwsze nazwisko z cząstek
-pierwsze nazwisko z cząstką z brakets
oczekiwany wynik
Caterina Guonçallvez
Francisco Ro[dr]í[gueJz
Johao de Miranda
Lucas Martinz Mal-Cuzinhado
Francisquo d[e] Arruda
Francisquo de Miranda
Nazwy są Początki z uppercases
Ostatnia część nazwy następuje przestrzeni (lub przecinek z miejsca), a słowo zaczynające się od małej charakterze jak „braçeyro” lub „calçeteyro "(Praca ludzi)
danych < - readlines (" schowka”, kodowanie = "latin1")
co starałem:
^([a-zA-ZàáâäãåąčćęèéêëėįìíîïłńòóôöõøùúûüųūÿýżźñçčšžÀÁÂÄÃÅĄĆČĖĘÈÉÊËÌÍÎÏĮŁŃÒÓÔÖÕØÙÚÛÜŲŪŸÝŻŹÑßÇŒÆČŠŽ∂ð])\w+[A-Z ,.'-]\w+
dając
Antonio Guomez
Caterina Guon
Francisco Ro
Johao de
Francisquo d
można wkleić oczekiwanego wyjście? Ponieważ nie wiem, jak się nazywa. Mamy proste nazwisko w Indiach. – khrm
Użyłbym 'str_extract (s," \\ p {Lu} [\\ w \\] \\ [-] * (?: (?: \\ s + d \\ [? E \\]?)? \\ s + \\ p {Lu} [\\ w \\] \\ [-] *) * ")', jest liniową wersją zaakceptowanej odpowiedzi (dlatego jest szybsza), a także dopasowuje nazwy zaczynające się od dowolna wielka litera. –