perl ersetzen

Bash, Shell, PHP, Python, Perl, CGI
conym18
Posts: 137
Joined: 2003-01-21 12:41

perl ersetzen

Post by conym18 »

hi,

ich habe folgende zeile:

$zeile =~ m/([a-zA-Z0-9-.]{3,22}.[a-zA-Z0-9-.]+.[a-zA-Z]com)/


kann ich in dieser zeile mir auch gleich den . zwischen 22} und [a-z durch ein @ ersetzen lassen?

oder brauche ich dann eine neue zeile?
aus der ersten zeile bekomme ich $1 zurück

dank
wirsing
Posts: 604
Joined: 2002-11-20 21:32
Location: Vaihingen und Karlsruhe

Re: perl ersetzen

Post by wirsing »

@ statt dem Punkt dürfte gehen (Ich bin kein großer Perl-Programmierer).
conym18
Posts: 137
Joined: 2003-01-21 12:41

Re: perl ersetzen

Post by conym18 »

nee geht nicht, da er sonst nach dem @ sucht und nicht ersetzt
wgot
Posts: 1675
Joined: 2003-07-06 02:03

Re: perl ersetzen

Post by wgot »

Hallo,

kann man machen, es ist aber erheblich einfacher, einfach eine zusätzliche Zeile zu nehmen:

Code: Select all

$zeile=~s/./@/;
drunter und gut is.

PS: Was soll die Monsterzeile eigentlich bewirken? Mir fällt da nix sinnvolles ein.

Gruß, Wolfgang
conym18
Posts: 137
Joined: 2003-01-21 12:41

Re: perl ersetzen

Post by conym18 »

so ist es richtig:

$zeile=~tr/./@/;
wgot
Posts: 1675
Joined: 2003-07-06 02:03

Re: perl ersetzen

Post by wgot »

Hallo,
conym18 wrote:$zeile=~tr/./@/;
ersetzt alle Punkte durch @.

meine Zeile ersetzt den ersten Punkt durch @.

Kann sich der OP ja raussuchen was er braucht.

Den angesprochenen Punkt aus seiner Zeile kann er weder mit Deiner noch mit meiner Zeile durch ein @ ersetzen, der steht nämlich für beliebiges Zeichen. :oops:

Gruß, Wolfgang
conym18
Posts: 137
Joined: 2003-01-21 12:41

Re: perl ersetzen

Post by conym18 »

und wie bekomme ich es hin das er den PUNKT ersetzt?
wgot
Posts: 1675
Joined: 2003-07-06 02:03

Re: perl ersetzen

Post by wgot »

Hallo,

schreib halt mal, was das sein / können / werden soll, dann klappt's vielleicht auch mit der Hilfe. Aber gut - Ratespiel nächste Runde - suchst Du das?

Code: Select all

$zeile =~ m/([a-zA-Z0-9-.]{3,22}).([a-zA-Z0-9-.]+.[a-zA-Z]com)/
$ergebnis="$1@$2";
Gruß, Wolfgang
conym18
Posts: 137
Joined: 2003-01-21 12:41

Re: perl ersetzen

Post by conym18 »

hi,

ich habe eine datei und in der datei stehen meine usernickpages drin.

jeder user soll auch eine email bekommen.

ein username = eine usermail.

deswegen will ich den ersten punkt (user.mydomain.de) in user@mydomain.de umwandelt.