Carlito Palm Geschrieben November 24, 2020 Geschrieben November 24, 2020 liebste kollegas, folgende problemstellung: ich habe eine namensliste, bei der ich mittels grep nur die familiennamen in kapitälchen auszeichnen möchte. jede person hat eine eigenen absatz. das gute: nach dem familiennamen kommt immer ein komma. blöd nur, dass danach manchmal auch noch ein oder mehr kommata vorkommen. ich brauche die anwendung meiner zeichenformatvorlage aber nur auf das eine wort vor dem ersten komma. danach nicht mehr. hab schon einiges probiert mit positive/negative look behind/forward aber ich komme nicht dahinter. wie bekomme ich den ausdruck »non greedy« so dass er nur das erste komma anpackt?
Sebastian Nagel Geschrieben November 24, 2020 Geschrieben November 24, 2020 Könntest du mal eine Beispielzeile zeigen?
Gast bertel Geschrieben November 24, 2020 Geschrieben November 24, 2020 vor 25 Minuten schrieb Carlito Palm: aber nur auf das eine wort vor dem ersten komma. Steht der Name vorne? Dann könnte das auch das erste Wort nach einem Zeilenumbruch sein.
Sebastian Nagel Geschrieben November 24, 2020 Geschrieben November 24, 2020 Kleine Zwischenlösung ... bestimmt noch ausbaufähig: – Jedes Wort vor einem Komma wird versal formatiert (wenn sich davor ein Leerzeichen befindet) – Aber jedes außer das erste wird dann wieder normal "zurückformatiert" (ich glaube es geht prinzipiell auch nicht anders als über diese zwei Stufen, aber lerne gerne dazu ...)
Zen Geschrieben November 24, 2020 Geschrieben November 24, 2020 vor 12 Minuten schrieb bertel: Steht der Name vorne? Dann könnte das auch das erste Wort nach einem Zeilenumbruch sein. Wahrscheinlich etwas zu kurz gedacht, da ein Nachname auch aus mehreren Worten bestehen kann.
Sebastian Nagel Geschrieben November 24, 2020 Geschrieben November 24, 2020 Besser: – das erste Wort das ein Leerzeichen davor, und ein Komma danach hat (= der Nachname ... lassen wir mal "van der ..." außen vor) wird versal. – danach wird alles was ein Komma voran hat, bis zum Absatzende, wieder normal formatiert. 1
Sebastian Nagel Geschrieben November 24, 2020 Geschrieben November 24, 2020 Und eine Variante 3, die in Kauf nimmt, dass Vornamen, Nachnamen etc. nicht immer nur aus einem Wort bestehen: Über Schrift > Sonderzeichen> Andere > Verschachteltes Format hier beenden eine Markierung in den Text einfügen, wo genau der Nachname beginnt. Dann so formatieren: – alles zwischen diesem "Verschachteles format beenden" und dem ersten Komma Versal formatieren – alles nach dem Komma dann normal weiterformatieren
Sebastian Nagel Geschrieben November 24, 2020 Geschrieben November 24, 2020 Und eine Variante 4, die auch das "Verschachteltes Format hier beenden" braucht (und wir es vermutlich ohnehin brauchen sobald besondere Nachnamen auftauchen), aber mit nur einer GREP-Formatierung auskommt (also den Rest nicht stört): – Alles zwischen diesem Marker und einem Komma, aber "non-greedy" (.+? statt .*) --> nur bis zum nächsten Komma. ---> damit könntest du auch weitere Versal-Formate in der selben Zeile auslösen, es geht immer vom Marker bis zum ersten Komma das darauf folgt.
Carlito Palm Geschrieben November 24, 2020 Themen-Ersteller Geschrieben November 24, 2020 meine lieben, danke allen schlauen grep-spezialisten! hab jetzt stundenlang herumgebastelt und auf basis von sebastians vorschlag nr.2 für mich eine lösung gefunden. die idee, zwei stile zu bauen (einmal hin und dann teilweise wieder retour) war der weg zur lösung. ich hab jetzt zwei solche reparatur-formate drin, die die meisten fehler wieder ausmerzen. so geht das jetzt recht flott und ich muss nur mehr die personen, die einen nachgestellten titel (wie zb MA) oder auch ordenszusätze (wie zb OCist) händisch zurückstellen. die von sebastian vorgeschlagene methode mit dem zeichen »format hier beenden« bringt meiner meinung keinen zeitgewinn, da diese zeichen ja händisch eingefügt werden müssen. dann kann ich ja eh auch gleich wie bisher die familiennamen einzeln formatieren. habe heute abend wieder viel gelernt. vielen dank!
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenEinloggen
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden