Clarify the documentation of back-references in replacements
* doc/emacs/search.texi (Regexp Replace): Clarify that \D starts with \1, not \0. * lisp/replace.el (query-replace-regexp) (query-replace-regexp-eval, replace-regexp): Doc fix (Bug#23884)
This commit is contained in:
parent
d039fc4ff6
commit
38f4b8ea61
2 changed files with 16 additions and 13 deletions
|
@ -1356,12 +1356,12 @@ Replace every match for @var{regexp} with @var{newstring}.
|
||||||
it can refer to all or part of what is matched by the @var{regexp}.
|
it can refer to all or part of what is matched by the @var{regexp}.
|
||||||
@samp{\&} in @var{newstring} stands for the entire match being
|
@samp{\&} in @var{newstring} stands for the entire match being
|
||||||
replaced. @samp{\@var{d}} in @var{newstring}, where @var{d} is a
|
replaced. @samp{\@var{d}} in @var{newstring}, where @var{d} is a
|
||||||
digit, stands for whatever matched the @var{d}th parenthesized
|
digit starting from 1, stands for whatever matched the @var{d}th
|
||||||
grouping in @var{regexp}. (This is called a ``back reference''.)
|
parenthesized grouping in @var{regexp}. (This is called a ``back
|
||||||
@samp{\#} refers to the count of replacements already made in this
|
reference''.) @samp{\#} refers to the count of replacements already
|
||||||
command, as a decimal number. In the first replacement, @samp{\#}
|
made in this command, as a decimal number. In the first replacement,
|
||||||
stands for @samp{0}; in the second, for @samp{1}; and so on. For
|
@samp{\#} stands for @samp{0}; in the second, for @samp{1}; and so on.
|
||||||
example,
|
For example,
|
||||||
|
|
||||||
@example
|
@example
|
||||||
M-x replace-regexp @key{RET} c[ad]+r @key{RET} \&-safe @key{RET}
|
M-x replace-regexp @key{RET} c[ad]+r @key{RET} \&-safe @key{RET}
|
||||||
|
|
|
@ -391,9 +391,10 @@ replace backward.
|
||||||
|
|
||||||
Fourth and fifth arg START and END specify the region to operate on.
|
Fourth and fifth arg START and END specify the region to operate on.
|
||||||
|
|
||||||
In TO-STRING, `\\&' stands for whatever matched the whole of REGEXP,
|
In TO-STRING, `\\&' or `\\0' stands for whatever matched the whole of
|
||||||
and `\\=\\N' (where N is a digit) stands for
|
REGEXP, and `\\=\\N' (where N is a digit) stands for whatever matched
|
||||||
whatever what matched the Nth `\\(...\\)' in REGEXP.
|
the Nth `\\(...\\)' (1-based) in REGEXP. The `\\(...\\)' groups are
|
||||||
|
counted from 1.
|
||||||
`\\?' lets you edit the replacement text in the minibuffer
|
`\\?' lets you edit the replacement text in the minibuffer
|
||||||
at the given position for each replacement.
|
at the given position for each replacement.
|
||||||
|
|
||||||
|
@ -451,7 +452,9 @@ If the result of TO-EXPR is not a string, it is converted to one using
|
||||||
|
|
||||||
For convenience, when entering TO-EXPR interactively, you can use `\\&' or
|
For convenience, when entering TO-EXPR interactively, you can use `\\&' or
|
||||||
`\\0' to stand for whatever matched the whole of REGEXP, and `\\N' (where
|
`\\0' to stand for whatever matched the whole of REGEXP, and `\\N' (where
|
||||||
N is a digit) to stand for whatever matched the Nth `\\(...\\)' in REGEXP.
|
N is a digit) to stand for whatever matched the Nth `\\(...\\)' (1-based)
|
||||||
|
in REGEXP.
|
||||||
|
|
||||||
Use `\\#&' or `\\#N' if you want a number instead of a string.
|
Use `\\#&' or `\\#N' if you want a number instead of a string.
|
||||||
In interactive use, `\\#' in itself stands for `replace-count'.
|
In interactive use, `\\#' in itself stands for `replace-count'.
|
||||||
|
|
||||||
|
@ -635,9 +638,9 @@ replace backward.
|
||||||
|
|
||||||
Fourth and fifth arg START and END specify the region to operate on.
|
Fourth and fifth arg START and END specify the region to operate on.
|
||||||
|
|
||||||
In TO-STRING, `\\&' stands for whatever matched the whole of REGEXP,
|
In TO-STRING, `\\&' or `\\0' stands for whatever matched the whole of
|
||||||
and `\\=\\N' (where N is a digit) stands for
|
REGEXP, and `\\=\\N' (where N is a digit) stands for
|
||||||
whatever what matched the Nth `\\(...\\)' in REGEXP.
|
whatever matched the Nth `\\(...\\)' (1-based) in REGEXP.
|
||||||
`\\?' lets you edit the replacement text in the minibuffer
|
`\\?' lets you edit the replacement text in the minibuffer
|
||||||
at the given position for each replacement.
|
at the given position for each replacement.
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue