Portál AbcLinuxu, 9. května 2025 23:52

Dotaz: Perl - regulární výrazy, metaznaky

3.3.2013 10:42 Petr
Perl - regulární výrazy, metaznaky
Přečteno: 183×
Odpovědět | Admin
Dobrý den,

měl bych v proměnné uložený nějaký řetězec. Tento řetězec bych chtěl použít v regulárním výrazu. např m/$promenna/g. Problém je v tom, že řetězec předem neznáma a tak se v něm můžou vyskytovat libovolné metaznaky. Potřeboval bych zrušit speciální význam všech metaznaků, které se v řetězci vyskytují.

Zkoušel jsem před všechny metaznaky řetězce vrazit zpětné lomítko. Nešlo by to ale nějak jednodušeji? Neexistuje nějaký příkaz nebo přepínač, který ruší speciální význam všech metaznaků v reg. výrazu?

Řešení dotazu:


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

Odpovědi

Řešení 1× (Thyrst')
3.3.2013 11:21 Thyrst' | skóre: 6 | blog: a256
Rozbalit Rozbalit vše Re: Perl - regulární výrazy, metaznaky
Odpovědět | | Sbalit | Link | Blokovat | Admin
m/\Q$promenna\E/g

To by mělo fungovat.

3.3.2013 12:32 Petr
Rozbalit Rozbalit vše Re: Perl - regulární výrazy, metaznaky
Děkuju, funguje skvěle !
3.3.2013 14:49 Jan Šimák | skóre: 37 | Hradec Králové
Rozbalit Rozbalit vše Re: Perl - regulární výrazy, metaznaky
Odpovědět | | Sbalit | Link | Blokovat | Admin
Interní funkce quotemeta poslouží stejnému účelu.

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.