Re: Grep question [parsing variables] problem

This WebDNA talk-list message is from

2003


It keeps the original formatting.
numero = 47287
interpreted = N
texte = 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).HTHJohn-- John Peacock Director of Information Research and Technology Rowman & Littlefield Publishing Group 4720 Boston Way Lanham, MD 20706 301-459-3366 x.5010 fax 301-429-5747 ------------------------------------------------------------- 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:

    
  1. Re: Grep question [parsing variables] problem (Gyuri 2003)
  2. Re: Grep question [parsing variables] problem (Rob Marquardt 2003)
  3. Re: Grep question [parsing variables] problem (Gyuri 2003)
  4. Re: Grep question [parsing variables] problem (John Peacock 2003)
  5. Re: Grep question [parsing variables] problem (Palle Bo Nielsen 2003)
  6. Re: Grep question [parsing variables] problem (John Peacock 2003)
  7. Grep question [parsing variables] problem (Palle Bo Nielsen 2003)
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).HTHJohn-- John Peacock Director of Information Research and Technology Rowman & Littlefield Publishing Group 4720 Boston Way Lanham, MD 20706 301-459-3366 x.5010 fax 301-429-5747 ------------------------------------------------------------- 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/ John Peacock

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:

problem serving foreign languages text (1997) RE: HTTP Header info (1997) RE: IIS4b2 and WebCatalog b19 (1997) Location of Browser Info.txt file (1997) how does [break] work? (1998) Am I going senile? (Price recalc based on quantity) (1997) WebCat2 - many [carts] on one template page? (1997) RE: Help name our technology! (1997) [searchString] (1997) Problems With NT 4.0.1 Install (2000) GuestBook example (1997) All choice in popups (1997) PIXO (1997) BCC Limits (2002) Sort Order on a page search (1997) [WebDNA] Best WebDNA version for OS X Server 10.5.8 on PowerPC? (2010) Falsifying [BROWSERNAME] (1998) More Hide IFs (2000) [WebDNA] MD5 Hash issue (2009) Reload adding to cart (2001)