all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Dan Espen <despen@verizon.net>
To: help-gnu-emacs@gnu.org
Subject: Re: Query replace regex with 2 alternatives
Date: Fri, 07 Dec 2012 15:06:48 -0500	[thread overview]
Message-ID: <ictxrxeief.fsf@home.home> (raw)
In-Reply-To: barmar-DB1826.13590607122012@news.eternal-september.org

Barry Margolin <barmar@alum.mit.edu> writes:

> In article <icd2ylg5zz.fsf@home.home>, Dan Espen <despen@verizon.net> 
> wrote:
>
>> Could use some help on query/replace/regex.
>> 
>> I have an html file full of &lt; and &gt;.
>> I want to replace only some of the pairs with "[" and "]".
>> 
>> I figured out the match string:
>> 
>> "\\(&lt;\\|&gt;\\)
>> 
>> (typed as)
>> 
>> "\(&lt;\|&gt;\)
>> 
>> but when it comes to the replacement, I'm not clear on how to say,
>> first match gets [ and second match gets ].
>
> Do two separate query-replaces, one to replace &lt; with [, the other to 
> replace &gt; with ].
>
>> I believe emacs can do it but I don't see it documented.
>> I see references to \1 \2 but not in the replace string.
>
> I think what you're talking about is:
>
> &lt;\(.*?\)&gt;
> Relace with:
> [\1]

Thanks Barry, that worked for what I wanted and is perhaps better.

> Or maybe this is what you mean:
>
> &lt;\|&gt;
> Replace with:
> \,(if (string-equal \& "&lt;" "[" "]"))

This is what I was asking for.
I pasted both values into emacs and the latter part gave me an
error, (wrong-number-of-arguments if 1).  The same error I get if
I try to evaluate the expression.  Not important now, I got the idea.

I don't see "\," here:

http://www.gnu.org/software/emacs/manual/html_node/emacs/Regexp-Backslash.html#Regexp-Backslash

http://tinyurl.com/aqod6fv

okay, I do see it here:

http://www.gnu.org/software/emacs/manual/html_node/emacs/Regexp-Replace.html#Regexp-Replace

It would have helped if I looked at the current documentation...

Thanks again.

-- 
Dan Espen


  reply	other threads:[~2012-12-07 20:06 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-12-07 16:51 Query replace regex with 2 alternatives Dan Espen
2012-12-07 18:59 ` Barry Margolin
2012-12-07 20:06   ` Dan Espen [this message]
2012-12-07 20:19     ` Tassilo Horn
     [not found]     ` <mailman.14801.1354911562.855.help-gnu-emacs@gnu.org>
2012-12-07 21:32       ` Dan Espen
2012-12-08  5:31     ` Barry Margolin
2012-12-07 20:11 ` Jambunathan K
     [not found] ` <mailman.14799.1354910918.855.help-gnu-emacs@gnu.org>
2012-12-08 22:07   ` WJ
2012-12-08 23:03     ` William Gardella

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ictxrxeief.fsf@home.home \
    --to=despen@verizon.net \
    --cc=help-gnu-emacs@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.