|< 1 2 >| | 11 Einträge, 2 Seiten |
perl -MData::Dumper -e 'print Dumper [split/,\s+/, "i_motorart integer, d_kw decimal(7,2), i_kat integer "]'
1 2 3
my $string = 'i_motorart integer,d_kw decimal(7,2),i_kat integer'; my @werte = split /,/, $string; print "$_\n" for my @werte;
perl -MData::Dumper -e 'print Dumper [split/\D,/, "i_motorart integer,d_kw decimal(7,2),i_kat integer"]'
perl -MData::Dumper -e 'print Dumper [split/,\D/, "i_motorart integer,$1 d_kw decimal(7,2),$1 i_kat integer"]'
case+2007-08-29 18:52:21--Aber wie mache das Ganze, wenn zwischen Kommas keine Leerzeichen stehen
1 2 3
my $t = "i_motorart integer,d_kw decimal(7,2),i_kat integer"; $t =~ s/(\D),(\D)/$1;$2/g; print Dumper [split/;/, $t];
case+2007-08-29 19:39:13--Ich glaube du hast mein Problem nicht verstanden
das decimal(7,2) darf nicht getrennt werden.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
my $str = 'i_motorart integer,d_kw decimal(7,2),i_kat integer'; my @pieces = $str =~ m/( # Speichere Wert (?: (?> # Backtracking verhindern [^,(]+ # Soviele kein Komma und # öffnen Klammer matchen wie möglich ) | # Oder: Wenn Komma oder Öffnen Klammer gefunden \( [^)]+ \) # Wenn öffnende Klammer dann bis zur nächsten # Schließenden Klammer gehen )+ # Bei einem Komma ist hier jetzt ende und ein # wir haben einen Match )/xg; # Mit Option g solange wiederholen # bis wir jeden Treffer haben print "$_\n" for @pieces;
|< 1 2 >| | 11 Einträge, 2 Seiten |