CINXE.COM
Regular Expressions Reference: Special and Non-Printable Characters
<!DOCTYPE html> <html lang="en"><head><meta charset="utf-8"><link rel=canonical href='https://https://www.regular-expressions.info//refcharacters.html'><title>Regular Expressions Reference: Special and Non-Printable Characters</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="author" content="Jan Goyvaerts"> <meta name="description" content="Reference of the various syntactic elements that can appear in regular expressions"> <meta name="keywords" content=""> <link rel=stylesheet href="regex.css" type="text/css"><script src="theme.js" type="text/javascript"></script><link rel="alternate" type="application/rss+xml" title="New at Regular-Expressions.info" href="updates.xml"> </head> <body bgcolor=white text=black> <div id=top></div> <div id=btntop><div id=btngrid><a href="quickstart.html" target="_top"><div>Quick Start</div></a><a href="tutorial.html" target="_top"><div>Tutorial</div></a><a href="tools.html" target="_top"><div>Tools & Languages</div></a><a href="examples.html" target="_top"><div>Examples</div></a><a href="refflavors.html" target="_top"><div>Reference</div></a><a href="books.html" target="_top"><div>Book Reviews</div></a></div></div> <div id=contents><div id=side> <TABLE CLASS=side CELLSPACING=0 CELLPADDING=4><TR><TD CLASS=sideheader>Regex Reference</TD></TR><TR><TD><A HREF="reference.html" TARGET=_top>Introduction</A></TD></TR><TR><TD><A HREF="refflavors.html" TARGET=_top>Table of Contents</A></TD></TR><TR><TD><A HREF="refquick.html" TARGET=_top>Quick Reference</A></TD></TR><TR><TD><A HREF="refcharacters.html" TARGET=_top>Characters</A></TD></TR><TR><TD><A HREF="refbasic.html" TARGET=_top>Basic Features</A></TD></TR><TR><TD><A HREF="refcharclass.html" TARGET=_top>Character Classes</A></TD></TR><TR><TD><A HREF="refshorthand.html" TARGET=_top>Shorthands</A></TD></TR><TR><TD><A HREF="refanchors.html" TARGET=_top>Anchors</A></TD></TR><TR><TD><A HREF="refwordboundaries.html" TARGET=_top>Word Boundaries</A></TD></TR><TR><TD><A HREF="refrepeat.html" TARGET=_top>Quantifiers</A></TD></TR><TR><TD><A HREF="refunicode.html" TARGET=_top>Unicode</A></TD></TR><TR><TD><A HREF="refcapture.html" TARGET=_top>Capturing Groups & Backreferences</A></TD></TR><TR><TD><A HREF="refext.html" TARGET=_top>Named Groups & Backreferences</A></TD></TR><TR><TD><A HREF="refadv.html" TARGET=_top>Special Groups</A></TD></TR><TR><TD><A HREF="refmodifiers.html" TARGET=_top>Mode Modifiers</A></TD></TR><TR><TD><A HREF="refrecurse.html" TARGET=_top>Recursion & Balancing Groups</A></TD></TR> </TABLE><TABLE CLASS=side CELLSPACING=0 CELLPADDING=4><TR><TD CLASS=sideheader>Replacement Reference</TD></TR><TR><TD><A HREF="refreplacecharacters.html" TARGET=_top>Characters</A></TD></TR><TR><TD><A HREF="refreplacebackref.html" TARGET=_top>Matched Text & Backreferences</A></TD></TR><TR><TD><A HREF="refreplacecase.html" TARGET=_top>Context & Case Conversion</A></TD></TR><TR><TD><A HREF="refreplaceconditional.html" TARGET=_top>Conditionals</A></TD></TR> </TABLE><TABLE CLASS=side CELLSPACING=0 CELLPADDING=4><TR><TD CLASS=sideheader>More on This Site</TD></TR><TR><TD><A HREF="index.html" TARGET=_top>Introduction</A></TD></TR><TR><TD><A HREF="quickstart.html" TARGET=_top>Regular Expressions Quick Start</A></TD></TR><TR><TD><A HREF="tutorial.html" TARGET=_top>Regular Expressions Tutorial</A></TD></TR><TR><TD><A HREF="replacetutorial.html" TARGET=_top>Replacement Strings Tutorial</A></TD></TR><TR><TD><A HREF="tools.html" TARGET=_top>Applications and Languages</A></TD></TR><TR><TD><A HREF="examples.html" TARGET=_top>Regular Expressions Examples</A></TD></TR><TR><TD><A HREF="refflavors.html" TARGET=_top>Regular Expressions Reference</A></TD></TR><TR><TD><A HREF="refreplace.html" TARGET=_top>Replacement Strings Reference</A></TD></TR><TR><TD><A HREF="books.html" TARGET=_top>Book Reviews</A></TD></TR><TR><TD><A HREF="print.html" TARGET=_top>Printable PDF</A></TD></TR><TR><TD><A HREF="about.html" TARGET=_top>About This Site</A></TD></TR><TR><TD><A HREF="updates.html" TARGET=_top>RSS Feed & Blog</A></TD></TR></TABLE></DIV><div><div class=bodytext><div class=topad style="height:130px"><A HREF="https://www.regexbuddy.com/benefits.html" TARGET="_top"><picture><source media="(max-width: 370px)" srcset="ads/320/rxbreference100.png 1x, ads/320/rxbreference150.png 1.5x, ads/320/rxbreference200.png 2x, ads/320/rxbreference250.png 2.5x, ads/320/rxbreference300.png 3x, ads/320/rxbreference350.png 3.5x, ads/320/rxbreference400.png 4x"><source media="(max-width: 500px)" srcset="ads/360/rxbreference100.png 1x, ads/360/rxbreference150.png 1.5x, ads/360/rxbreference200.png 2x, ads/360/rxbreference250.png 2.5x, ads/360/rxbreference300.png 3x, ads/360/rxbreference350.png 3.5x, ads/360/rxbreference400.png 4x"><source media="(max-width: 660px)" srcset="ads/480/rxbreference100.png 1x, ads/480/rxbreference150.png 1.5x, ads/480/rxbreference200.png 2x, ads/480/rxbreference250.png 2.5x, ads/480/rxbreference300.png 3x, ads/480/rxbreference350.png 3.5x, ads/480/rxbreference400.png 4x"><source media="(max-width: 747px)" srcset="ads/640/rxbreference100.png 1x, ads/640/rxbreference150.png 1.5x, ads/640/rxbreference200.png 2x, ads/640/rxbreference250.png 2.5x, ads/640/rxbreference300.png 3x, ads/640/rxbreference350.png 3.5x, ads/640/rxbreference400.png 4x"><img src="ads/728/rxbreference100.png" srcset="ads/728/rxbreference100.png 1x, ads/728/rxbreference125.png 1.25x, ads/728/rxbreference150.png 1.5x, ads/728/rxbreference175.png 1.75x, ads/728/rxbreference200.png 2x, ads/728/rxbreference250.png 2.5x, ads/728/rxbreference300.png 3x, ads/728/rxbreference350.png 3.5x, ads/728/rxbreference400.png 4x" alt="RegexBuddy—Better than a regular expression reference!"></picture></A></div> <div class=bulb><h1>Regular Expression Reference: Special and Non-Printable Characters</h1><script type="text/javascript">showbulb();</script></div> <p><select id=selflavor onchange="selectflavor()"> <option value=jgsoft selected>JGsoft</option> <option value=dotnet>.NET</option> <option value=java>Java</option> <option value=perl>Perl</option> <option value=pcre>PCRE</option> <option value=pcre2>PCRE2</option> <option value=php>PHP</option> <option value=delphi>Delphi</option> <option value=rlanguage>R</option> <option value=javascript>JavaScript</option> <option value=vbscript>VBScript</option> <option value=xregexp>XRegExp</option> <option value=python>Python</option> <option value=ruby>Ruby</option> <option value=stdregex>std::regex</option> <option value=boost>Boost</option> <option value=tcl>Tcl ARE</option> <option value=posixbre>POSIX BRE</option> <option value=posixere>POSIX ERE</option> <option value=gnubre>GNU BRE</option> <option value=gnuere>GNU ERE</option> <option value=oracle>Oracle</option> <option value=xml>XML</option> <option value=xpath>XPath</option> </select> <select id=selflavor2 onchange="selectflavor2()"> <option value=jgsoft>JGsoft</option> <option value=dotnet selected>.NET</option> <option value=java>Java</option> <option value=perl>Perl</option> <option value=pcre>PCRE</option> <option value=pcre2>PCRE2</option> <option value=php>PHP</option> <option value=delphi>Delphi</option> <option value=rlanguage>R</option> <option value=javascript>JavaScript</option> <option value=vbscript>VBScript</option> <option value=xregexp>XRegExp</option> <option value=python>Python</option> <option value=ruby>Ruby</option> <option value=stdregex>std::regex</option> <option value=boost>Boost</option> <option value=tcl>Tcl ARE</option> <option value=posixbre>POSIX BRE</option> <option value=posixere>POSIX ERE</option> <option value=gnubre>GNU BRE</option> <option value=gnuere>GNU ERE</option> <option value=oracle>Oracle</option> <option value=xml>XML</option> <option value=xpath>XPath</option> </select></p> </div><table class=reference id=tableflavor> <tr><th>Feature</th><th>Syntax</th><th>Description</th><th>Example</th><th><A HREF="jgsoft.html" TARGET="_top">JGsoft</A></th> <th><A HREF="dotnet.html" TARGET="_top">.NET</A></th> <th><A HREF="java.html" TARGET="_top">Java</A></th> <th><A HREF="perl.html" TARGET="_top">Perl</A></th> <th><A HREF="pcre.html" TARGET="_top">PCRE</A></th> <th><A HREF="pcre2.html" TARGET="_top">PCRE2</A></th> <th><A HREF="php.html" TARGET="_top">PHP</A></th> <th><A HREF="delphi.html" TARGET="_top">Delphi</A></th> <th><A HREF="rlanguage.html" TARGET="_top">R</A></th> <th><A HREF="javascript.html" TARGET="_top">JavaScript</A></th> <th><A HREF="vbscript.html" TARGET="_top">VBScript</A></th> <th><A HREF="xregexp.html" TARGET="_top">XRegExp</A></th> <th><A HREF="python.html" TARGET="_top">Python</A></th> <th><A HREF="ruby.html" TARGET="_top">Ruby</A></th> <th><A HREF="stdregex.html" TARGET="_top">std::regex</A></th> <th><A HREF="boost.html" TARGET="_top">Boost</A></th> <th><A HREF="tcl.html" TARGET="_top">Tcl ARE</A></th> <th><a href="posix.html#bre">POSIX BRE</a></th> <th><a href="posix.html#ere">POSIX ERE</a></th> <th><a href="gnu.html#bre">GNU BRE</a></th> <th><a href="gnu.html#ere">GNU ERE</a></th> <th><A HREF="oracle.html" TARGET="_top">Oracle</A></th> <th><A HREF="xml.html" TARGET="_top">XML</A></th> <th><A HREF="xpath.html" TARGET="_top">XPath</A></th></tr> <tr><td><A HREF="characters.html" TARGET="_top">Literal character</A></td> <td>Any character except <tt>[\^$.|?*+()</tt></td> <td>All characters except the listed special characters match a single instance of themselves</td> <td><TT CLASS=syntax><SPAN CLASS="regexplain">a</SPAN></TT> matches <tt class=match>a</tt></td> <td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td></tr> <tr><td><A HREF="characters.html" TARGET="_top">Literal curly braces</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexplain">{</SPAN></TT> and <TT CLASS=syntax><SPAN CLASS="regexplain">}</SPAN></TT></td> <td><tt>{</tt> and <tt>}</tt> are literal characters, unless they’re part of a valid regular expression token such as a quantifier <TT CLASS=syntax><SPAN CLASS="regexspecial">{3}</SPAN></TT></td> <td><TT CLASS=syntax><SPAN CLASS="regexplain">{</SPAN></TT> matches <tt class=match>{</tt></td> <td class=yes>YES</td><td class=yes>YES</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>1.9</td><td class=yes>basic<br>grep</td><td class=yes>ECMA 1.54–1.85<br>basic 1.38–1.85<br>grep 1.38–1.85</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td></tr> <tr><td><a href="characters.html#special">Backslash escapes a metacharacter</a></td> <td><tt>\</tt> followed by any of <tt>[\^$.|?*+(){}</tt></td> <td>A backslash escapes special characters to suppress their special meaning</td> <td><TT CLASS=syntax><SPAN CLASS="regexescaped">\*</SPAN></TT> matches <tt class=match>*</tt></td> <td class=yes>YES</td><td class=yes>YES</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>1.9</td><td class=yes>basic<br>grep</td><td class=yes>ECMA 1.54–1.85<br>basic 1.38–1.85<br>grep 1.38–1.85</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td></tr> <tr><td><a href="characters.html#special">Escape sequence</a></td> <td><tt>\Q...\E</tt></td> <td>Matches the characters between <tt>\Q</tt> and <tt>\E</tt> literally, suppressing the meaning of special characters</td> <td><TT CLASS=syntax><SPAN CLASS="regexmeta">\Q</SPAN><SPAN CLASS="regexplain">+-*/</SPAN><SPAN CLASS="regexmeta">\E</SPAN></TT> matches <tt class=match>+-*/</tt></td> <td class=yes>YES</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td class=yes>ECMA<br>extended<br>egrep<br>awk</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Hexadecimal escape</A></td> <td><tt>\xFF</tt> where FF are 2 hexadecimal digits </td> <td>Matches the character at the specified position in the code page</td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\xA9</SPAN></TT> matches <tt class=match>©</tt> when using the Latin-1 code page</td> <td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>ECMA</td><td class=yes>ECMA<br>extended<br>egrep<br>awk</td><td class=yes>YES</td><td class=yes>string</td><td class=yes>string</td><td class=yes>string</td><td class=yes>string</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Character escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\n</SPAN></TT>, <TT CLASS=syntax><SPAN CLASS="regexspecial">\r</SPAN></TT> and <TT CLASS=syntax><SPAN CLASS="regexspecial">\t</SPAN></TT></td> <td>Match an LF character, CR character and a tab character respectively</td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\r</SPAN><SPAN CLASS="regexspecial">\n</SPAN></TT> matches a Windows CRLF line break</td> <td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>ECMA<br>awk</td><td class=yes>ECMA<br>extended<br>egrep<br>awk</td><td class=yes>YES</td><td class=yes>string</td><td class=yes>string</td><td class=yes>string</td><td class=yes>string</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Line break</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\R</SPAN></TT></td> <td>Matches any line break, including CRLF as a pair, CR only, LF only, form feed, vertical tab, and any Unicode line break</td> <td></td> <td class=yes>V2</td><td>no</td><td class=yes>8</td><td class=yes>5.10</td><td class=yes>7.0</td><td class=yes>YES</td><td class=yes>5.2.2</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td class=yes>2.0</td><td>no</td><td class=yes>ECMA<br>1.42–1.85</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Line break</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\R</SPAN></TT></td> <td>Matches the next line control character U+0085</td> <td></td> <td class=yes>V2</td><td>n/a</td><td class=yes>8</td><td class=yes>5.10</td><td class=yes>7.0</td><td class=yes>YES</td><td class=yes>5.2.2</td><td class=yes>YES</td><td class=yes>YES</td><td>n/a</td><td>n/a</td><td>n/a</td><td>n/a</td><td class=yes>2.0</td><td>n/a</td><td class=yes>ECMA<br>1.54–1.85</td><td>n/a</td><td>n/a</td><td>n/a</td><td>n/a</td><td>n/a</td><td>n/a</td><td>n/a</td><td>n/a</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Line break</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\R</SPAN></TT></td> <td>CRLF line breaks are indivisible</td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\R</SPAN><SPAN CLASS="regexspecial">{2}</SPAN></TT> and <TT CLASS=syntax><SPAN CLASS="regexspecial">\R</SPAN><SPAN CLASS="regexspecial">\R</SPAN></TT> cannot match <tt class=string>\r\n</tt></td> <td class=yes>YES</td><td>n/a</td><td>9 no</td><td>5.10 no</td><td>7.0–8.12 no</td><td class=yes>YES</td><td>5.2.2–5.3.18 no</td><td>XE–XE6 no</td><td class=yes>YES</td><td>n/a</td><td>n/a</td><td>n/a</td><td>n/a</td><td class=yes>YES</td><td>n/a</td><td class=yes>YES</td><td>n/a</td><td>n/a</td><td>n/a</td><td>n/a</td><td>n/a</td><td>n/a</td><td>n/a</td><td>n/a</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Line break</A></td> <td>Literal CRLF, LF, or CR line break</td> <td>Matches CRLF as a pair, CR only, and LF only regardless of the line break style used in the regex</td> <td></td> <td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Character escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\a</SPAN></TT></td> <td>Match the “alert” or “bell” control character (ASCII 0x07)</td> <td></td> <td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>awk</td><td class=yes>ECMA<br>extended<br>egrep<br>awk</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Character escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\b</SPAN></TT></td> <td>Match the “backspace” control character (ASCII 0x08)</td> <td></td> <td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td class=yes>awk</td><td>no</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Character escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\B</SPAN></TT></td> <td>Match a backslash</td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\B</SPAN></TT> matches <tt class=match>\</tt></td> <td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Character escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\e</SPAN></TT></td> <td>Match the “escape” control character (ASCII 0x1B)</td> <td></td> <td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td class=yes>YES</td><td>no</td><td class=yes>ECMA<br>extended<br>egrep<br>awk</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Character escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\f</SPAN></TT></td> <td>Match the “form feed” control character (ASCII 0x0C)</td> <td></td> <td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>ECMA<br>awk</td><td class=yes>ECMA<br>extended<br>egrep<br>awk</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Character escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\v</SPAN></TT></td> <td>Match the “vertical tab” control character (ASCII 0x0B), but not any other vertical whitespace.</td> <td></td> <td class=yes>V1 only</td><td class=yes>YES</td><td class=yes>4–7</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>ECMA<br>awk</td><td class=yes>ECMA 1.38–1.39<br>extended 1.38–1.85<br>egrep 1.38–1.85<br>awk 1.38–1.85</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Control character escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\cA</SPAN></TT> through <TT CLASS=syntax><SPAN CLASS="regexspecial">\cZ</SPAN></TT></td> <td>Match an ASCII character Control+A through Control+Z, equivalent to <TT CLASS=syntax><SPAN CLASS="regexspecial">\x01</SPAN></TT> through <TT CLASS=syntax><SPAN CLASS="regexspecial">\x1A</SPAN></TT></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\cM</SPAN><SPAN CLASS="regexspecial">\cJ</SPAN></TT> matches a Windows CRLF line break</td> <td class=yes>V1 only</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td><td class=yes>YES</td><td class=yes>ECMA</td><td class=yes>ECMA<br>extended<br>egrep<br>awk</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Control character escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\ca</SPAN></TT> through <TT CLASS=syntax><SPAN CLASS="regexspecial">\cz</SPAN></TT></td> <td>Match an ASCII character Control+A through Control+Z, equivalent to <TT CLASS=syntax><SPAN CLASS="regexspecial">\x01</SPAN></TT> through <TT CLASS=syntax><SPAN CLASS="regexspecial">\x1A</SPAN></TT></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\cm</SPAN><SPAN CLASS="regexspecial">\cj</SPAN></TT> matches a Windows CRLF line break</td> <td class=yes>V1 only</td><td class=yes>YES</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td><td class=yes>YES</td><td class=yes>ECMA</td><td class=yes>ECMA<br>extended<br>egrep<br>awk</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">NULL escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\0</SPAN></TT></td> <td>Match the NULL character</td> <td></td> <td>no</td><td class=yes>YES</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>ECMA</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Octal escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\o{7777}</SPAN></TT> where 7777 is any octal number</td> <td>Matches the character at the specified position in the active code page</td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\o{20254}</SPAN></TT> matches <tt class=match>€</tt> when using Unicode</td> <td class=yes>V2</td><td>no</td><td>no</td><td class=yes>5.14</td><td class=yes>8.34</td><td class=yes>YES</td><td class=yes>5.5.10</td><td class=yes>XE7</td><td class=yes>3.0.3</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Octal escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\1</SPAN></TT> through <TT CLASS=syntax><SPAN CLASS="regexspecial">\7</SPAN></TT></td> <td>Matches the character at the specified position in the ASCII table</td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\7</SPAN></TT> matches the “bell” character</td> <td>no</td><td class=yes>ECMA</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td class=yes>awk</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Octal escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\10</SPAN></TT> through <TT CLASS=syntax><SPAN CLASS="regexspecial">\77</SPAN></TT></td> <td>Matches the character at the specified position in the ASCII table</td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\77</SPAN></TT> matches <tt class=match>?</tt></td> <td>no</td><td class=yes>YES</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td><td>no</td><td class=yes>YES</td><td class=yes>awk</td><td>no</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Octal escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\100</SPAN></TT> through <TT CLASS=syntax><SPAN CLASS="regexspecial">\177</SPAN></TT></td> <td>Matches the character at the specified position in the ASCII table</td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\100</SPAN></TT> matches <tt class=match>@</tt></td> <td>no</td><td class=yes>YES</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>awk</td><td>no</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Octal escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\200</SPAN></TT> through <TT CLASS=syntax><SPAN CLASS="regexspecial">\377</SPAN></TT></td> <td>Matches the character at the specified position in the active code page</td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\377</SPAN></TT> matches <tt class=match>ÿ</tt> when using the Latin-1 code page</td> <td>no</td><td class=yes>2.0–8.0</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td><td class=yes>YES</td><td class=fail>1.8 only fail</td><td class=yes>awk</td><td>no</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Octal escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\400</SPAN></TT> through <TT CLASS=syntax><SPAN CLASS="regexspecial">\777</SPAN></TT></td> <td>Matches the character at the specified position in the active code page</td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\777</SPAN></TT> matches <tt class=match>ǿ</tt> when using Unicode</td> <td>no</td><td class=fail>non‑ECMA<br>1.0–1.1 fail</td><td>no</td><td class=yes>5.14</td><td class=yes>6.7</td><td class=yes>YES</td><td class=yes>5.2.0</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td class=fail>3.5 error</td><td class=fail>1.8 only fail</td><td class=yes>awk</td><td>no</td><td class=yes>8.4–8.5</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Octal escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\01</SPAN></TT> through <TT CLASS=syntax><SPAN CLASS="regexspecial">\07</SPAN></TT></td> <td>Matches the character at the specified position in the ASCII table</td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\07</SPAN></TT> matches the “bell” character</td> <td class=yes>V1 only</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>awk</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Octal escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\010</SPAN></TT> through <TT CLASS=syntax><SPAN CLASS="regexspecial">\077</SPAN></TT></td> <td>Matches the character at the specified position in the ASCII table</td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\077</SPAN></TT> matches <tt class=match>?</tt></td> <td class=yes>V1 only</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>awk</td><td class=yes>YES</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Octal escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\0100</SPAN></TT> through <TT CLASS=syntax><SPAN CLASS="regexspecial">\0177</SPAN></TT></td> <td>Matches the character at the specified position in the ASCII table</td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\0100</SPAN></TT> matches <tt class=match>@</tt></td> <td class=yes>V1 only</td><td>no</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><td><A HREF="nonprint.html" TARGET="_top">Octal escape</A></td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\0200</SPAN></TT> through <TT CLASS=syntax><SPAN CLASS="regexspecial">\0377</SPAN></TT></td> <td>Matches the character at the specified position in the active code page</td> <td><TT CLASS=syntax><SPAN CLASS="regexspecial">\0377</SPAN></TT> matches <tt class=match>ÿ</tt> when using the Latin-1 code page</td> <td class=yes>V1 only</td><td>no</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td></tr> <tr><th>Feature</th><th>Syntax</th><th>Description</th><th>Example</th><th><A HREF="jgsoft.html" TARGET="_top">JGsoft</A></th> <th><A HREF="dotnet.html" TARGET="_top">.NET</A></th> <th><A HREF="java.html" TARGET="_top">Java</A></th> <th><A HREF="perl.html" TARGET="_top">Perl</A></th> <th><A HREF="pcre.html" TARGET="_top">PCRE</A></th> <th><A HREF="pcre2.html" TARGET="_top">PCRE2</A></th> <th><A HREF="php.html" TARGET="_top">PHP</A></th> <th><A HREF="delphi.html" TARGET="_top">Delphi</A></th> <th><A HREF="rlanguage.html" TARGET="_top">R</A></th> <th><A HREF="javascript.html" TARGET="_top">JavaScript</A></th> <th><A HREF="vbscript.html" TARGET="_top">VBScript</A></th> <th><A HREF="xregexp.html" TARGET="_top">XRegExp</A></th> <th><A HREF="python.html" TARGET="_top">Python</A></th> <th><A HREF="ruby.html" TARGET="_top">Ruby</A></th> <th><A HREF="stdregex.html" TARGET="_top">std::regex</A></th> <th><A HREF="boost.html" TARGET="_top">Boost</A></th> <th><A HREF="tcl.html" TARGET="_top">Tcl ARE</A></th> <th><a href="posix.html#bre">POSIX BRE</a></th> <th><a href="posix.html#ere">POSIX ERE</a></th> <th><a href="gnu.html#bre">GNU BRE</a></th> <th><a href="gnu.html#ere">GNU ERE</a></th> <th><A HREF="oracle.html" TARGET="_top">Oracle</A></th> <th><A HREF="xml.html" TARGET="_top">XML</A></th> <th><A HREF="xpath.html" TARGET="_top">XPath</A></th></tr></table><div class=bodytext> <script type="text/javascript" src="selflavor.js"></script><div id=cntmobi><p>| <a href='quickstart.html'>Quick Start</a> | <a href='tutorial.html'>Tutorial</a> | <a href='tools.html'>Tools & Languages</a> | <a href='examples.html'>Examples</a> | <a href='refflavors.html'>Reference</a> | <a href='books.html'>Book Reviews</a> |</p><p>| <a href='reference.html'>Introduction</a> | <a href='refflavors.html'>Table of Contents</a> | <a href='refquick.html'>Quick Reference</a> | <a href='refcharacters.html'>Characters</a> | <a href='refbasic.html'>Basic Features</a> | <a href='refcharclass.html'>Character Classes</a> | <a href='refshorthand.html'>Shorthands</a> | <a href='refanchors.html'>Anchors</a> | <a href='refwordboundaries.html'>Word Boundaries</a> | <a href='refrepeat.html'>Quantifiers</a> | <a href='refunicode.html'>Unicode</a> | <a href='refcapture.html'>Capturing Groups & Backreferences</a> | <a href='refext.html'>Named Groups & Backreferences</a> | <a href='refadv.html'>Special Groups</a> | <a href='refmodifiers.html'>Mode Modifiers</a> | <a href='refrecurse.html'>Recursion & Balancing Groups</a> |</p><p>| <a href='refreplacecharacters.html'>Characters</a> | <a href='refreplacebackref.html'>Matched Text & Backreferences</a> | <a href='refreplacecase.html'>Context & Case Conversion</a> | <a href='refreplaceconditional.html'>Conditionals</a> |</p></div> <div id=copyright> <P CLASS=copyright>Page URL: <A HREF="https://www.regular-expressions.info/refcharacters.html" TARGET="_top">https://www.regular-expressions.info/refcharacters.html</A><BR> Page last updated: 16 August 2024<BR> Site last updated: 06 November 2024<BR> Copyright © 2003-2024 Jan Goyvaerts. All rights reserved.</P> </div> </div> </div> </div> </body></html>