Perl Split-Funktion - Verwenden Sie sich wiederholende Zeichen als Trennzeichen
Ich möchte einen String mit sich wiederholenden Buchstaben als Trennzeichen teilen, zum Beispiel"123aaaa23a3"
sollte geteilt werden als('123', '23a3')
while"123abc4"
sollte unverändert bleiben.
So versuchte ich das:
@s = split /([[:alpha:]])\1+/, '123aaaa23a3';
Aber dies gibt @ zurü'123', 'a', '23a3'
, was ich nicht wollte. Jetzt weiß ich, dass dies daran liegt, dass das letzte'a'
im'aaaa'
wird von den Klammern erfasst und somit von @ beibehaltsplit()
. Aber sowieso kann ich so etwas nicht hinzufügen?:
schon seit[[:alpha:]]
muss als Rückverweis erfasst werden. Wie kann ich diese Situation lösen?