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:

Navigator Parsing (1997) Server Error Question (2004) emailer settings and control questions (1997) RE: Credit card processing - UK (1997) WebCat2_Mac RETURNs in .db (1997) [WebDNA] error installing 6.2 on ubuntu (2011) Server Error Question [bug?] (2004) Problems with webcat 2.01 for NT (1997) webcat nt (1997) Errata: WCS Newbie question (1997) Updating a database once per day - An example (1998) Emailer again (1997) Dates - Search and Sorting (1999) Re: (1997) [WebDNA] Webdna error on plain html site (2013) Execute Applescript (1997) The List is Changing (1997) Sorting by date (1997) form data submission gets truncated (1997) [countWords]? (1997)