Ich möchte das Jahr finden ETWAS passiert (das nächste Jahr Zeichenfolge Muster, vielleicht 2016y oder 16y oder 2016y1m3d, vor dem Schlüsselwort ETWAS) und markieren Sie es zum Beispiel ändernwie das erste Muster hinter einigen Muster in Regex
'2015y, Balabala; 2016y3m4d, passiert etwas
zu
‚2015y, balabala; <Marke> 2016y3m4d <Marke>, geschieht etwas, um etwas 'funktioniert nicht
einfach das Jahr und Schlüsselwort übereinstimmen', wie
echo '2015y, balabala; 2016y3m4d, SOMETHING happens' \
| perl -ne 's/(\d+y\d+m\d+d|\d+y\d+m|\d+y)(.*)(SOMETHING)/<mark>\1<mark>\2\3/g; print;'
ausgeben wird
<mark> 2015y <mark>, Balabala; 2016y, ETWAS passiert
Hilfe?
gute Idee. Was ist, wenn ETWAS mehrmals auftritt, wie 2015y, Balabala; 2016y3m4d passiert ETWAS; 2015y, Balabala; 2016y3m4d, ETWAS passiert ' – user2548774
@ user2548774 dann nur letzte '2016y3m4d, wird etwas geändert ... wollen Sie sie alle ändern? – rock321987
@ user2548774 können Sie analysieren ** [hier] (https://regex101.com/r/zF5vZ7/1) ** – rock321987