Portál AbcLinuxu, 27. dubna 2024 03:02


Dotaz: perl - číslo rozděleno mezerami

4.12.2007 14:18 motorcb | skóre: 12
perl - číslo rozděleno mezerami
Přečteno: 304×
Odpovědět | Admin
Dobry den.Mam dalsi problem s Perlem :)
Je-li číslo rozděleno mezerami (např. 1 650 000), odstraňte tyto mezery a číslo slepte.
Napada nekoho nejaky napad? :)
diky
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

4.12.2007 14:47 tyctor
Rozbalit Rozbalit vše Re: perl - číslo rozděleno mezerami
Odpovědět | | Sbalit | Link | Blokovat | Admin
$cislo =~ s/ //g;
4.12.2007 15:14 motorcb | skóre: 12
Rozbalit Rozbalit vše Re: perl - číslo rozděleno mezerami
my $promena="Cena tohoto zboží je 1 650 000";

a v takovemto pripade by se to delalo jak? Potreboval bych aby zustaly zachovane mezery mezi slovama a aby nebyli mezi cislicema....

Diky :)
4.12.2007 15:32 happy barney | skóre: 34 | blog: dont_worry_be_happy
Rozbalit Rozbalit vše Re: perl - číslo rozděleno mezerami
s/(?<=\D)\s(?=\D)//g
4.12.2007 15:34 motorcb | skóre: 12
Rozbalit Rozbalit vše Re: perl - číslo rozděleno mezerami
Bohuzel odtrani mezery mezi slovy :(
4.12.2007 15:42 happy barney | skóre: 34 | blog: dont_worry_be_happy
Rozbalit Rozbalit vše Re: perl - číslo rozděleno mezerami
:-) jasné, nie D, ale d, v oboch prípadoch
4.12.2007 15:57 motorcb | skóre: 12
Rozbalit Rozbalit vše Re: perl - číslo rozděleno mezerami
To je poresne ono,diky moc :)
A nechalo by se jeste udelat aby kdyby pred cislem byl dolar (např. $ 1 650 000) abz to ten dolar take pripojilo k cislu???? $1650000
Jeste jednou diky :)
4.12.2007 16:12 pht
Rozbalit Rozbalit vše Re: perl - číslo rozděleno mezerami
namatkou bych to upravil s/(?<=[\d\$])\s(?=\d)//g
4.12.2007 16:38 motorcb | skóre: 12
Rozbalit Rozbalit vše Re: perl - číslo rozděleno mezerami
Presne toto jsem hledal.Diky moc. Mas u me pivo :)
4.12.2007 16:44 pht
Rozbalit Rozbalit vše Re: perl - číslo rozděleno mezerami
Myslim, ze se o nej podelim s "happy barney" :)
4.12.2007 22:39 motorcb | skóre: 12
Rozbalit Rozbalit vše Re: perl - číslo rozděleno mezerami
$promena="Cena tohoto zboží je $1,650,000.43";
Prosim jak to predelat na:
Cena tohoto zboží je $1650000.43
4.12.2007 23:18 happy barney | skóre: 34 | blog: dont_worry_be_happy
Rozbalit Rozbalit vše Re: perl - číslo rozděleno mezerami
do look-before pridať čiarku
4.12.2007 23:33 motorcb | skóre: 12
Rozbalit Rozbalit vše Re: perl - číslo rozděleno mezerami
? :)
5.12.2007 07:09 happy barney | skóre: 34 | blog: dont_worry_be_happy
Rozbalit Rozbalit vše Re: perl - číslo rozděleno mezerami
a) moja odpoveď bola chybná (rieši iný problém)
b) miesto \s zápis [\s,]
5.12.2007 10:18 motorcb | skóre: 12
Rozbalit Rozbalit vše Re: perl - číslo rozděleno mezerami
Bohuzel stale nefunguje :( Dela to stale to same co predtim
4.12.2007 15:33 Jiří J. | skóre: 34 | blog: Poutník | Brno
Rozbalit Rozbalit vše Re: perl - číslo rozděleno mezerami
To záleží na tom, zda víte, kolik mezer v čísle bude, apod.
Nevím, zda to bude fungovat, jen tipuju z hlavy:
$promenna =~ s/[0-9]\s//g;
To ovšem matchne ale i poslední číslo před mezerou, kdybyste uvedl příklad využití v praxi, možná, že by to šlo zařídit jinak (pokud před číslem nejsou mezery, dá se rafinovaně použít ^ v [], apod.).
4.12.2007 15:36 motorcb | skóre: 12
Rozbalit Rozbalit vše Re: perl - číslo rozděleno mezerami
Mam spousty textu a potrebuju z nich vytahnout vsechny cisla.... A udelat statistuku vyskytu jedntlivejch cisel ale mam problem prave s vymazanim mezer mezi cisli :(
4.12.2007 16:10 rastos | skóre: 62 | blog: rastos
Rozbalit Rozbalit vše Re: perl - číslo rozděleno mezerami
$ echo bob joe 234 745 sue ann | \
sed -e 's/[a-zA-Z ]* \([0-9]*\)/\1/g' -e 's/\([0-9]*\) \([0-9]*\)/\1\2/g' -e 's/\([0-9]*\)[a-zA-Z ]/\1/g '
234745
Bez záruky.
4.12.2007 17:06 happy barney | skóre: 34 | blog: dont_worry_be_happy
Rozbalit Rozbalit vše Re: perl - číslo rozděleno mezerami
echo 'bob 123 joe 345 sue' ... 123345sue
:-D

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.