Re: Grep question [parsing variables] problem
This WebDNA talk-list message is from 2003
It keeps the original formatting.
numero = 47292
interpreted = N
texte = However there is a solution that replaces it in one run, regardless of the tags matching:[text]set_main_txt=[grep search=\[(\/?[bBiI])\]&replace=<\1>][text_main][/grep][/text]GyuriJohn Peacock wrote:> Palle Bo Nielsen wrote:>>> Hi John,>>>> Well it should have stated...>>>> this is a test [b]with bold [i]and bold italic[/i] words[/b]>>>> My bad when I wrote the mail to the list... but it still don't work...>>> Nor should it. You will have to replace the nested context first, or > else it will not work. In general, you will be unable to use grep to > manage nested search and replace; you really need to use a finite > state machine to do this in a consistent way. Here's why:>>>>> [!] -- REPLACE [b] WITH
(ignore case) text [/!]>> [text]set_main_txt=[grep >> search=\[[bB]\]([^[unurl]%5B[/unurl]]*)\[/[bB]\]&replace=\1 >> b>][text]set_main_txt[/text][/grep][/text]>>> This part of the regex:>> \[[bB]\]([^[unurl]%5B[/unurl]]*)>> matches this part of the original text:>> [b]with bold [>> but since there isn't an immediately trailing [/b], the search fails > and hence the replace never happens.>> You will have to do 4 searchs: 1 for each leading and trailing tag:>> [text]set_main_txt=[grep > search=\[[bB]\]&replace=[text]set_main_txt[/text][/grep][/text]> [text]set_main_txt=[grep > search=\[/[bB]\]&replace=[text]set_main_txt[/text][/grep][/text]>> [text]set_main_txt=[grep > search=\[[iI]\]&replace=[text]set_main_txt[/text][/grep][/text]> [text]set_main_txt=[grep > search=\[/[iI]\]&replace=[text]set_main_txt[/text][/grep][/text]>> However, this would still not _disply_ correctly if, as you originally > posted, one of the closing tags was missing (the rest of the page > would be boldface).>> HTH>> John>-- Gyuri OrdodyObjects Online, Inc.-------------------------------------------------------------This message is sent to you because you are subscribed to the mailing list .To unsubscribe, E-mail to: To switch to the DIGEST mode, E-mail to Web Archive of this list is at: http://webdna.smithmicro.com/
Associated Messages, from the most recent to the oldest:
However there is a solution that replaces it in one run, regardless of the tags matching:[text]set_main_txt=[grep search=\[(\/?[bBiI])\]&replace=<\1>][text_main][/grep][/text]GyuriJohn Peacock wrote:> Palle Bo Nielsen wrote:>>> Hi John,>>>> Well it should have stated...>>>> this is a test [b]with bold [i]and bold italic[/i] words[/b]>>>> My bad when I wrote the mail to the list... but it still don't work...>>> Nor should it. You will have to replace the nested context first, or > else it will not work. In general, you will be unable to use grep to > manage nested search and replace; you really need to use a finite > state machine to do this in a consistent way. Here's why:>>>>> [!] -- REPLACE [b] WITH (ignore case) text [/!]>> [text]set_main_txt=[grep >> search=\[[bB]\]([^[unurl]%5B[/unurl]]*)\[/[bB]\]&replace=\1 >> b>][text]set_main_txt[/text][/grep][/text]>>> This part of the regex:>> \[[bB]\]([^[unurl]%5B[/unurl]]*)>> matches this part of the original text:>> [b]with bold [>> but since there isn't an immediately trailing [/b], the search fails > and hence the replace never happens.>> You will have to do 4 searchs: 1 for each leading and trailing tag:>> [text]set_main_txt=[grep > search=\[[bB]\]&replace=[text]set_main_txt[/text][/grep][/text]> [text]set_main_txt=[grep > search=\[/[bB]\]&replace=[text]set_main_txt[/text][/grep][/text]>> [text]set_main_txt=[grep > search=\[[iI]\]&replace=[text]set_main_txt[/text][/grep][/text]> [text]set_main_txt=[grep > search=\[/[iI]\]&replace=[text]set_main_txt[/text][/grep][/text]>> However, this would still not _disply_ correctly if, as you originally > posted, one of the closing tags was missing (the rest of the page > would be boldface).>> HTH>> John>-- Gyuri OrdodyObjects Online, Inc.-------------------------------------------------------------This message is sent to you because you are subscribed to the mailing list .To unsubscribe, E-mail to: To switch to the DIGEST mode, E-mail to Web Archive of this list is at: http://webdna.smithmicro.com/
Gyuri
DOWNLOAD WEBDNA NOW!
Top Articles:
Talk List
The WebDNA community talk-list is the best place to get some help: several hundred extremely proficient programmers with an excellent knowledge of WebDNA and an excellent spirit will deliver all the tips and tricks you can imagine...
Related Readings:
[search] sort problem (2003)
carriage returns in data (1997)
FTP Problem (2005)
Separate SSL Server (1997)
Introduction/Tutorial/QuickStart (1997)
apparently to problem isolated (1997)
Error, 101 a DNS problem ? (1997)
[protect admin] (1997)
Duplicates (1998)
The beginning (1997)
[WebDNA] Basic Search (2008)
WebCat2 several catalogs? (1997)
New WebCatalog Version !!! (1997)
Summing fields (1997)
Nested tags count question (1997)
Intermitent problem using [referrer] (1997)
WebCat preferences caching problem (2000)
06/06/2000 bug warning ... (2000)
[OT] Industry standard for missing orders (2003)
[WebDNA] Databases not staying open (2010)