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:

Location of Browser Info.txt file (1997) Pgp&emailer (1997) Feature req. (2002) Opinion: [input] should be called [output] ... (1997) Multiple Pulldowns (1997) Re[2]: Enhancement Request for WebCatalog-NT (1996) [searchString] (1997) Emailer setup (1997) WC --> printer (1998) 2.0.1 new commands and contexts (1997) carriage returns in data (1997) using showpage and showcart commands (1996) Text limits in NT version? (1997) ShowIf Question (1998) Calculating multiple shipping... (1997) Format of Required fields error message (1997) Develop on Mac - Serve on Linux (2002) can WC render sites out? (1997) WebDNA Writer Needed (1997) [WebDNA] Problem with bcc email (2017)