Below is the revised version. A little ugly, but more precise. (re-search-forward "\\(<[[:blank:]]*\n*[[:blank:]]*body[[:blank:]]*\n*[[:blank:]]*fgcolor[[:blank:]]*=\".*\"[[:blank:]]*\n*[[:blank:]]*>\\)" nil t 1) On 7/31/10, filebat Mark wrote: > > Does the below solve your problem? > > (defun match-web-body() > (interactive) > (setq case-fold-search t);;Make searches case insensitive > (goto-char 0) > (re-search-forward "\\(< *\n* *body\n* +fgcolor=\".*\" *\n*>\\)" nil t > 1) > (setq match_str (match-string 1)) > (message match_str) > ) > > > > On Sat, Jul 31, 2010 at 12:32 AM, filebat Mark wrote: > >> (setq case-fold-search t), then re-search-forward is case insensitive. >> >> To leverage your effort, can you post your code for the sample of args >> parameter. >> >> >> On Fri, Jul 30, 2010 at 7:23 PM, ken wrote: >> >>> Thanks, Denny. I got the args working right, so it's basically working. >>> So now I'm on to another issue: the re-search-forward function. Again, >>> it's a syntax thing. >>> >>> As the code suggests, I'm looking for the html opening body tag. That >>> text could be as simple as "", but could also be: >>> >>> < >>> BodY >>> fgcolor="hazel" >>> > >>> >>> I thought this would work: >>> >>> (re-search-forward "<\s*[bB][oO][dD][yY]\s.*>" nil t) >>> >>> but apparently "\s" is being treated as a literal and not as >>> representing [whitespace]. Also, it doesn't seem that elisp has a >>> function for doing a case-insensitive RE search. >>> >>> >>> >>> On 07/29/2010 10:37 PM filebat Mark wrote: >>> > Hi Ken >>> > >>> > Yes, the parameter of CBARGS in url-retrieve function is confusing. >>> > I also tried this, but it complains of "wrong number of arguments". >>> > >>> > Let's wait to see whether others have any comment. I will spend some >>> > time, when I'm free. >>> > >>> > >>> > On Fri, Jul 30, 2010 at 4:01 AM, ken >> > > wrote: >>> > >>> > >>> > On 07/29/2010 11:22 AM filebat Mark wrote: >>> > > Hi Ken >>> > >>> > Hi, Denny. Thanks for replying >>> > >>> > >>> > > Where do you set the value of url in the second function? >>> > >>> > It needs to be passed from the first defun, but I don't know the >>> syntax >>> > for doing that. The url-retrieve function is a little complex in >>> terms >>> > of its arguments. I think it's stumped even the experts on this >>> list. >>> > >>> > >>> > > One big enhancement shall be setting the coding system of the >>> temp >>> > > buffer, based on the charset of the html page. >>> > >>> > Thanks for bringing that up. Yeah, I followed that on your thread. >>> I >>> > might have to deal with that too. If, after I get the main part of >>> my >>> > code working how I want it, I find it's having that problem, I'll >>> review >>> > your emails (which I still have) and perhaps get back to you for >>> > some tips. >>> > >>> > >>> > > Regards, >>> > > Denny >>> > >>> > Back at ya! >>> > ken >>> > >>> > >>> > > >>> > > On Thu, Jul 29, 2010 at 7:46 AM, ken >> > >>> > > >> >>> wrote: >>> > > >>> > > Lennart suggested I use a different defun, url-copy-file. I >>> > tried that >>> > > instead, but it didn't work. But then I went back to my >>> > original code, >>> > > moved a single parenthesis and... it worked... mostly. >>> Here's >>> > the code: >>> > > >>> > > ------------------------ start --------------------------- >>> > > load url.el >>> > > >>> > > (defun www-edit-web-page (url) >>> > > "Retrieve web page and load into new buffer for editing. >>> > > Automatically insert after tag URL, appropriately >>> > html-tagged >>> > > URL." >>> > > (interactive "sLoad URL: ") >>> > > (with-temp-buffer (url-retrieve url 'edit-web-page))) >>> > > >>> > > >>> > > (defun edit-web-page (status) >>> > > "Switch to the buffer returned by `url-retreive'. >>> > > The buffer should contain the web page sent by the >>> server." >>> > > (switch-to-buffer (current-buffer)) >>> > > (goto-char 0) >>> > > (re-search-forward "" nil t) ;go to end of >> > ...> tag. >>> > > ;insert URL into page >>> > > (insert "\n

From: " url "\n >>> >

\n\n")) >>> > > >>> > > ------------------------ ende --------------------------- >>> > > >>> > > This properly fetches the web page and loads it into a new, >>> > unsaved >>> > > buffer (exactly what I want), but the last line in the second >>> > defun >>> > > doesn't execute. The error messages are telling me that >>> > edit-web-page >>> > > doesn't know the value of "url". So how do I pass this >>> > variable-- with >>> > > its assignment from www-edit-web-page to edit-web-page? (I >>> have a >>> > > guess, but i'm more a C/bash/blah/blah/blah guy, so elisp is >>> a bit >>> > > mysterious.) >>> > > >>> > > >>> > > >>> > > >>> > > >>> > > >>> > > -- >>> > > Thanks & Regards >>> > > >>> > > Denny Zhang >>> > > >>> > >>> > >>> > >>> > >>> > -- >>> > Thanks & Regards >>> > >>> > Denny Zhang >>> > >>> >>> >> >> >> -- >> Thanks & Regards >> >> Denny Zhang >> >> > > > -- > Thanks & Regards > > Denny Zhang > > -- Thanks & Regards Denny Zhang