help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: query-replace-regexp interactive replacement string


From: Deniz Dogan
Subject: Re: query-replace-regexp interactive replacement string
Date: Thu, 3 Mar 2011 09:03:38 +0100

2011/3/2 suvayu ali <fatkasuvayu+linux@gmail.com>:
> Hi Emacs users,
>
> I wanted to replace interactively all numbers in the text of an org-mode
> document with the number in words, so I tried:
>
> `C-M-% [0-9]+ RET \? RET'
>
> But this gives me an error like this:
>
>> Debugger entered--Lisp error: (error "Invalid use of `\\' in replacement 
>> text")
>>   replace-match("\\?" t nil #("2" 0 1 (fontified t)) nil)
>>   match-substitute-replacement("\\?" t nil)
>>   perform-replace("[0-9]+" "\\?" t t nil nil nil nil nil)
>>   query-replace-regexp("[0-9]+" "\\?" nil nil nil)
>>   call-interactively(query-replace-regexp nil nil)
>>   recursive-edit()
>>   perform-replace("[0-9]+" "?" t t nil nil nil nil nil)
>>   query-replace-regexp("[0-9]+" "?" nil nil nil)
>>   call-interactively(query-replace-regexp nil nil)
>
> Since the doc string of `query-replace-regexp' says the following:
>
>> ...
>> In TO-STRING, ...
>> `\?' lets you edit the replacement text in the minibuffer
>> at the given position for each replacement.
>> ...
>
> I am not sure what I did wrong. I am using GNU Emacs 24.0.50.1
> (x86_64-unknown-linux-gnu, GTK+ Version 2.22.0)
>

Weird, it doesn't work for me either.  However, if I use
M-x replace-regexp it does work. In "(emacs) Regexp Replace" it also
mentions \?.

   "If you want to enter part of the replacement string by hand each
time, use `\?' in the replacement string.  Each replacement will ask
you to edit the replacement string in the minibuffer, putting point
where the `\?' was."

-- 
Deniz Dogan



reply via email to

[Prev in Thread] Current Thread [Next in Thread]