CVSROOT: /webcvs/grep Module name: grep Changes by: Jim Meyering <meyering> 21/08/14 16:46:41
Index: html_node/Back_002dreferences-and-Subexpressions.html =================================================================== RCS file: /webcvs/grep/grep/manual/html_node/Back_002dreferences-and-Subexpressions.html,v retrieving revision 1.31 retrieving revision 1.32 diff -u -b -r1.31 -r1.32 --- html_node/Back_002dreferences-and-Subexpressions.html 28 Sep 2020 03:36:49 -0000 1.31 +++ html_node/Back_002dreferences-and-Subexpressions.html 14 Aug 2021 20:46:40 -0000 1.32 @@ -1,8 +1,11 @@ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> +<!-- Created by GNU Texinfo 6.8, https://www.gnu.org/software/texinfo/ --> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <!-- This manual is for grep, a pattern matching engine. -Copyright (C) 1999-2002, 2005, 2008-2020 Free Software Foundation, +Copyright (C) 1999-2002, 2005, 2008-2021 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document @@ -11,80 +14,74 @@ Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License". --> -<!-- Created by GNU Texinfo 6.5, http://www.gnu.org/software/texinfo/ --> -<head> -<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> -<title>Back-references and Subexpressions (GNU Grep 3.5)</title> +<title>Back-references and Subexpressions (GNU Grep 3.7)</title> -<meta name="description" content="Back-references and Subexpressions (GNU Grep 3.5)"> -<meta name="keywords" content="Back-references and Subexpressions (GNU Grep 3.5)"> +<meta name="description" content="Back-references and Subexpressions (GNU Grep 3.7)"> +<meta name="keywords" content="Back-references and Subexpressions (GNU Grep 3.7)"> <meta name="resource-type" content="document"> <meta name="distribution" content="global"> <meta name="Generator" content="makeinfo"> -<link href="index.html#Top" rel="start" title="Top"> -<link href="Index.html#Index" rel="index" title="Index"> +<meta name="viewport" content="width=device-width,initial-scale=1"> + +<link href="index.html" rel="start" title="Top"> +<link href="Index.html" rel="index" title="Index"> <link href="index.html#SEC_Contents" rel="contents" title="Table of Contents"> -<link href="Regular-Expressions.html#Regular-Expressions" rel="up" title="Regular Expressions"> -<link href="Basic-vs-Extended.html#Basic-vs-Extended" rel="next" title="Basic vs Extended"> -<link href="Anchoring.html#Anchoring" rel="prev" title="Anchoring"> +<link href="Regular-Expressions.html" rel="up" title="Regular Expressions"> +<link href="Basic-vs-Extended.html" rel="next" title="Basic vs Extended"> +<link href="Anchoring.html" rel="prev" title="Anchoring"> <style type="text/css"> <!-- +a.copiable-anchor {visibility: hidden; text-decoration: none; line-height: 0em} a.summary-letter {text-decoration: none} blockquote.indentedblock {margin-right: 0em} -blockquote.smallindentedblock {margin-right: 0em; font-size: smaller} -blockquote.smallquotation {font-size: smaller} div.display {margin-left: 3.2em} div.example {margin-left: 3.2em} -div.lisp {margin-left: 3.2em} -div.smalldisplay {margin-left: 3.2em} -div.smallexample {margin-left: 3.2em} -div.smalllisp {margin-left: 3.2em} kbd {font-style: oblique} pre.display {font-family: inherit} pre.format {font-family: inherit} pre.menu-comment {font-family: serif} pre.menu-preformatted {font-family: serif} -pre.smalldisplay {font-family: inherit; font-size: smaller} -pre.smallexample {font-size: smaller} -pre.smallformat {font-family: inherit; font-size: smaller} -pre.smalllisp {font-size: smaller} span.nolinebreak {white-space: nowrap} span.roman {font-family: initial; font-weight: normal} span.sansserif {font-family: sans-serif; font-weight: normal} +span:hover a.copiable-anchor {visibility: visible} ul.no-bullet {list-style: none} --> </style> -<link rel="stylesheet" type="text/css" href="/software/gnulib/manual.css"> +<link rel="stylesheet" type="text/css" href="https://www.gnu.org/software/gnulib/manual.css"> </head> <body lang="en"> -<a name="Back_002dreferences-and-Subexpressions"></a> +<div class="section" id="Back_002dreferences-and-Subexpressions"> <div class="header"> <p> -Next: <a href="Basic-vs-Extended.html#Basic-vs-Extended" accesskey="n" rel="next">Basic vs Extended</a>, Previous: <a href="Anchoring.html#Anchoring" accesskey="p" rel="prev">Anchoring</a>, Up: <a href="Regular-Expressions.html#Regular-Expressions" accesskey="u" rel="up">Regular Expressions</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Index.html#Index" title="Index" rel="index">Index</a>]</p> +Next: <a href="Basic-vs-Extended.html" accesskey="n" rel="next">Basic vs Extended Regular Expressions</a>, Previous: <a href="Anchoring.html" accesskey="p" rel="prev">Anchoring</a>, Up: <a href="Regular-Expressions.html" accesskey="u" rel="up">Regular Expressions</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Index.html" title="Index" rel="index">Index</a>]</p> </div> <hr> -<a name="Back_002dreferences-and-Subexpressions-1"></a> -<h3 class="section">3.5 Back-references and Subexpressions</h3> -<a name="index-subexpression"></a> -<a name="index-back_002dreference"></a> +<span id="Back_002dreferences-and-Subexpressions-1"></span><h3 class="section">3.5 Back-references and Subexpressions</h3> +<span id="index-subexpression"></span> +<span id="index-back_002dreference"></span> -<p>The back-reference ‘<samp>\<var>n</var></samp>’, where <var>n</var> is a single digit, matches +<p>The back-reference ‘<samp>\<var>n</var></samp>’, +where <var>n</var> is a single nonzero digit, matches the substring previously matched by the <var>n</var>th parenthesized subexpression of the regular expression. For example, ‘<samp>(a)\1</samp>’ matches ‘<samp>aa</samp>’. -When used with alternation, if the group does not participate in the match then -the back-reference makes the whole match fail. -For example, ‘<samp>a(.)|b\1</samp>’ -will not match ‘<samp>ba</samp>’. +If the parenthesized subexpression does not participate in the match, +the back-reference makes the whole match fail; +for example, ‘<samp>(a)*\1</samp>’ fails to match ‘<samp>a</samp>’. +If the parenthesized subexpression matches more than one substring, +the back-reference refers to the last matched substring; +for example, ‘<samp>^(ab*)*\1$</samp>’ matches ‘<samp>ababbabb</samp>’ but not ‘<samp>ababbab</samp>’. When multiple regular expressions are given with <samp>-e</samp> or from a file (‘<samp>-f <var>file</var></samp>’), back-references are local to each expression. </p> -<p>See <a href="Known-Bugs.html#Known-Bugs">Known Bugs</a>, for some known problems with back-references. +<p>See <a href="Known-Bugs.html">Known Bugs</a>, for some known problems with back-references. </p> +</div>
