Archiv verlassen und diese Seite im Standarddesign anzeigen : perl, variablenbearbeitung...
Moin,
wie kann ich in Perl den Inhalt einer Variable zB $phone bearbeiten so dass diese nur Zahlen am ende beinhaltet und keine Buchstaben oder Zeichen wie zb / - * \ oder Leerzeichen?
ich kenne den Befehl (am Rande)
$phone=~ s/-//;
aber wie bekomme ich es hin, dass er alle Sachen umwandelt ?
Gruss und Danke
otelo
ponzellus
22-05-2002, 19:13
hi!
wenn du alle zeichen, die keine ziffern sind, loeschen willst, geht das so:
$phone =~ s/[^0-9]*//g;
MfG ponzellus
danke ponzellus,
kannst du mir evtl. kurz die Syntax von dem Befehl erklären,
was genau bedeutet ^ und das *
was bedeutet des g am schluss?
aber nur wenns dir nicht zuviel arbeit macht :-)
Gruss otelo
ponzellus
22-05-2002, 20:05
kein problem :)
also das sind eigentlich "nur" Regulaere Ausdruecke ;)
die "[]" stellen sozusagen einen bereich moeglicher zeichen dar
die 0-9 steht fuer alles zwischen 0-9, also alle ziffern
das "^" negiert die Bedingung, also alles ausser 0-9
das "*" bedeutet, das das zeichen, hinterdem es steht entweder null mal oder so oft hinternandern kommen muss ( habe eben bemerkt, dass das hier ueberfluessig ist, wegen dem "g")
das "g" steht naemlich dafuer, das der gefundene ausdruck in der ganzen zeile behandelt wird, und die nur der erste treffer
das hoert sich wahrscheinlich ziemlich verwirrend an, ist es am anfang auch. Aber wenn du die RegEx's verstanden hast, sind sie richtig genial :) (ich kenne selber noch nicht alle zeichen, in dem link unten stand z.b. noch, das man anstatt "[^0-9]" auch einfach nur "\D" haette machen koennen ;))
hier der link:
wenn du ein perl-buch hast, muesste da auch was ueber regex's drinstehen
Viele Gruesse
ponzellus
cool danke für die ausführliche Antwort!!!!!!
habs verstanden, muss wir wohl doch mal Perl in a Nutshell zulegen oder so
gruss otelo
ich habe "Perl-Einführung,Anwendungen,Referenz" ,Addison-Wesley, Farid Haijj. Da steht eine ganze menge zu regexp drin. Nicht wirklich trivial erklärt, aber wenn mann sich einmal eingelesen hat ist's klasse.:cool:
Powered by vBulletin® Version 4.2.5 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.