Schrift
[thread]6329[/thread]

Kommas: Loeschen



<< |< 1 2 3 4 ... 6 >| >> 51 Einträge, 6 Seiten
format_c
 2004-06-11 16:54
#83256 #83256
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Wie sieht denn dein RegEx aus und was genau soll er machen?

Gruß Alex
Antworten mit Zitat
jeni
 2004-06-11 18:20
#83257 #83257
User since
2004-06-11
4 Artikel
BenutzerIn
[default_avatar]
Es geht um eine
Zeile : name1, name2, name3 etc.
Wenn ich (,?) im Ausdruck schreibe, dann wird ein Komma, der ein Mal oder keinmal vorkommt gelöscht.
RegEx am Anfang
Zeile : name1, name2
name 3 gelöscht-wunderbar..., aber Zeile : ,name2, name3
RegEx am Ende
Zeile : name1, name2,
In beiden Fällen bleibt Komma irgendwo hängen...
Den RegEx zwei mal benutzen kann ich nicht, da alle Kommata gelöscht werden.
Antworten mit Zitat
[E|B]
 2004-06-11 22:00
#83258 #83258
User since
2003-08-08
2561 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Was hat das Thema im Forum FAQs zu suchen? ???
Gruß, Erik!

s))91\&\/\^z->sub{}\(\@new\)=>69\&\/\^z->sub{}\(\@new\)=>124\&\/\^z->sub{}\(\@new\)=>);
$_.=qq~66\&\/\^z->sub{}\(\@new\)=>93~;for(@_=split(/\&\/\^z->sub{}\(\@new\)=>/)){print chr;}

It's not a bug, it's a feature! - [CGI-World.de]
Antworten mit Zitat
Gast Gast
 2004-06-11 16:41
#83259 #83259
Hallo,
als Anfänger kann ich eine Aufgabe nicht so richtig loesen. Ich versuche Kommas anhand des regulären Ausdrucks zu löschen.
In einer Aufzählung ist es manchmal schwierig, da manch ein Wort mit dem nachstehenden Komma bleibt. Wie kann ich das loesen?
Danke
J
Antworten mit Zitat
Thorium
 2004-06-11 18:07
#83260 #83260
User since
2003-08-04
232 Artikel
BenutzerIn
[Homepage] [default_avatar]
http://www.lugbz.org/documents/smart-questions_de....

Also Kommas löschst du mit:

Code (perl): (dl )
1
2
3
my &#36var = 'lkasjdfl, blahblah, asdf,foo,bar,,,booma';

&#36var =~ s~,~~g;


Das "g" ist wichtig. Dies steht (imho) für "Global" und sagt, dass nicht nach dem ersten gefundenen komma beendet werden soll.
Ansonnsten beschreib dein Problem mal genauer bzw gib mehr infos
Per|li|nist der; -en, -en <zu ↑...ist>: a) Anhänger, Vertreter der radikalen Perlinisten die Perl als die einzig wahre Sprache ansehen; b) Mitglied einer perlinistischen Community.
Antworten mit Zitat
Crian
 2004-06-11 19:23
#83261 #83261
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Option g?

oder $zeile = join split /,/, $zeile;
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
Antworten mit Zitat
Crian
 2004-06-12 03:02
#83262 #83262
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Hab ich mich auch schon gefragt ... ich glaub ich verschieb es mal ...
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
Antworten mit Zitat
Dubu
 2004-06-12 04:09
#83263 #83263
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
Mir ist immer noch nicht klar, was diese Operation genau erreichen soll ...
Antworten mit Zitat
Crian
 2004-06-12 05:04
#83264 #83264
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Tja ... ich wälz nochmal aus, was ich oben knapp andeutete ...

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
#!/usr/local/bin/perl5.8.4
use strict;
use warnings;

my $kommastring = "name1, name2, name3, name4, name5";

(my $erg1 = $kommastring) =~ s~,~~g;
my $erg2 = join '', split /,/, $kommastring;

print "Anfangsstring = '$kommastring'\n",
"Ergebnis1 = '$erg1'\nErgebnis2 = '$erg2'\n";


Ausgabe

Code: (dl )
1
2
3
4
crian@theresa:~/perl/forum> kommas_weg.pl
Anfangsstring = 'name1, name2, name3, name4, name5'
Ergebnis1 = 'name1 name2 name3 name4 name5'
Ergebnis2 = 'name1 name2 name3 name4 name5'


Such Dir eine Variante aus =)\n\n

<!--EDIT|Crian|1087002503-->
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
Antworten mit Zitat
Dubu
 2004-06-12 17:06
#83265 #83265
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
Wenn ich Kommata loeschen will, mache ich ein $str =~ tr/,//d, das ist einfach und schnell.
Aber ich verstehe schon das Problem von Jeni nicht, wo irgendwie die letzten Woerter mit dem Komma davor verschwinden und wohl auch verschwinden sollen, oder?
Antworten mit Zitat
<< |< 1 2 3 4 ... 6 >| >> 51 Einträge, 6 Seiten



View all threads created 2004-06-11 16:54.