You are here: PSPad forum > České diskuzní fórum > Regulární výraz - co dělám špatně?

Regulární výraz - co dělám špatně?

#1 Regulární výraz - co dělám špatně?

Posted by: Kráťa | Date: 2021-09-22 05:58 | IP: IP Logged

Ahoj, potřeboval bych nahradit v XML souboru <Autor>Vondrová</Autor>, <Autor>VON</Autor>, <Autor>Iva Vondrová</Autor>.
Ale když dám vyhledat <Autor>*</Autor>, tak se mi to nenajde (regulární výrazy zatrženy.

--
--------

Třeba to PSPad dávno umí, pouze to neumím já.
Kráťa s vypnutým zvukem

Options: Reply | Quote | Up ^


#2 Re: Regulární výraz - co dělám špatně?

Posted by: pspad | Date: 2021-09-22 06:29 | IP: IP Logged

Regularni výrazy používají nějaké znaky jako kontrolní. Takové znaky se musí "escapovat" pomocí zpětného lomítka
jde o závorky, tečky, čárky, pomlčky...
Taky * neznamená libovolný znak, ale libovolný počet předchozích znaků
libovolný znak je "."

takže správný regulární výraz je v tomto případě
<Autor>.*</Autor>

Vy jste hledal libobolný počet závorek >

Options: Reply | Quote | Up ^


#3 Re: Regulární výraz - co dělám špatně?

Posted by: Kráťa | Date: 2021-09-23 04:03 | IP: IP Logged

Díky 987x. Já psal stále nen tečku, nebo jen hvězdičku a nikdy mě nenapadlo, napsat obojí. smiling smiley
Ano, potřebuji vyhledat třeba 40 výskytů s různými autory.

--
--------

Třeba to PSPad dávno umí, pouze to neumím já.
Kráťa s vypnutým zvukem

Edited 1 time(s). Last edit at 2021-09-23 04:04 by Kráťa.

Options: Reply | Quote | Up ^


#4 Re: Regulární výraz - co dělám špatně?

Posted by: Vany | Date: 2021-11-05 15:59 | IP: IP Logged

jen nějak chybí, ČÍM by se ten hledaný výraz měl nahradit
pokud obsahem, tak bych dal (bez uvozovek)
hledat: "<autor>(.*?)</autor>"
nahradit: "$1"

--
Vany
(PSPad 5.5.1.812 x32, W10h/p x64 en/cs)

Options: Reply | Quote | Up ^






Editor PSPad - freeware editor, © 2001 - 2024 Jan Fiala, Hosted by Webhosting TOJEONO.CZ, design by WebDesign PAY & SOFT, code Petr Dvořák, Privacy policy and GDPR