[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