Thread Wenn fünf Zahlen am Anfang des Strings dann löschen (2 answers)
Opened by Mathias at 2015-05-13 11:48

Linuxer
 2015-05-13 13:34
#181053 #181053
User since
2006-01-27
3870 Artikel
HausmeisterIn

user image
Guest Mathias
Mit folgendem Code wird bei mir jeweils immer fünf Zeichen gelöscht:
Code: (dl )
$message =~ s/^d{5}//;


Wow, Dann ist Dein Perl kaputt. Bei mir würde das nur 5 'd' am Anfang entfernen, aber nicht "immer fünf Zeichen".

Ansonsten hat FIFO Dir ja schon mitgeteilt, dass Du einen Backslash vor das d setzen musst, um auf Ziffern zu matchen.

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# die ersten 5 d werden ersetzt
~ $ perl -wE '$aa = "dddddd"; $aa =~ s/^d{5}//; say $aa'
d

# nix wird ersetzt, weil kein Treffer
~ $ perl -wE '$aa = "123456"; $aa =~ s/^d{5}//; say $aa'
123456

# die ersten 5 beliebigen Zeichen werden ersetzt
~ $ perl -wE '$aa = "123456"; $aa =~ s/^.{5}//; say $aa'
6

# die ersten 5 Ziffern werden ersetzt
~ $ perl -wE '$aa = "123456"; $aa =~ s/^\d{5}//; say $aa'
6
~ $


Siehe auch:
Perldoc:perlretut
Perldoc:perlre
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!

View full thread Wenn fünf Zahlen am Anfang des Strings dann löschen