Portál AbcLinuxu, 11. května 2025 06:47

Dotaz: JavaScript - replace len ak string zacina cislom

26.5.2014 09:14 gsnak | skóre: 22 | blog: gsnak
JavaScript - replace len ak string zacina cislom
Přečteno: 214×
Odpovědět | Admin
Chcem pomocou regularneho vyrazu naradit znak "b" nachadzajuci sa len za cislom, ak sa "b" nachadza za znakmi tak ho tam chcem nechat. Napriklad "aaa 01b bbb zub" --> "aaa 01 bbb zub".

Zatial mam toto:

"aaa 01b bbb zub".replace(/[0-9]+b/,'01') vrati "aaa 01 bbb zub"

Co samozrejme funguje len pre 01, ja potrebujem aby to fungovalo pre akekolvek cisla. Netusite niekto ako to v JS spravit?
Čo Rys, to vrah!

Řešení dotazu:


Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Tarmaq avatar 26.5.2014 09:46 Tarmaq | skóre: 39
Rozbalit Rozbalit vše Re: JavaScript - replace len ak string zacina cislom
Odpovědět | | Sbalit | Link | Blokovat | Admin
"aaa 01b bbb zub".replace(/(\d)b/, '$1')
Don't panic!
26.5.2014 10:26 gsnak | skóre: 22 | blog: gsnak
Rozbalit Rozbalit vše Re: JavaScript - replace len ak string zacina cislom
funguje! super.
Čo Rys, to vrah!
26.5.2014 16:57 Logik
Rozbalit Rozbalit vše Re: JavaScript - replace len ak string zacina cislom
Odpovědět | | Sbalit | Link | Blokovat | Admin
Jinak pro složitější podmínky tohoto typu se koukni na "lookahead regular expression"

http://www.regular-expressions.info/lookaround.html
wamba avatar 26.5.2014 21:59 wamba | skóre: 38 | blog: wamba
Rozbalit Rozbalit vše Re: JavaScript - replace len ak string zacina cislom
a funguje tohle v JavaScript-u?

taky jsem chtěl poradit něco jako
"aaa 01b bbb zub".replace(/\d\Kb/,'')
popř.
"aaa 01b bbb zub".replace(/(?<=\d)b/,'')
ale když jsem to otestoval v JavaScriptu, tak to neprošlo
This would have been so hard to fix when you don't know that there is in fact an easy fix.

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.