<html lang="en">
<head>
<title>Pattern Matching - The GNU C Library</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="The GNU C Library">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="prev" href="Searching-and-Sorting.html#Searching-and-Sorting" title="Searching and Sorting">
<link rel="next" href="I_002fO-Overview.html#I_002fO-Overview" title="I/O Overview">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
This file documents the GNU C library.

This is Edition 0.12, last updated 2007-10-27,
of `The GNU C Library Reference Manual', for version
2.8 (Sourcery G++ Lite 2011.03-41).

Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2002,
2003, 2007, 2008, 2010 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being ``Free Software Needs Free Documentation''
and ``GNU Lesser General Public License'', the Front-Cover texts being
``A GNU Manual'', and with the Back-Cover Texts as in (a) below.  A
copy of the license is included in the section entitled "GNU Free
Documentation License".

(a) The FSF's Back-Cover Text is: ``You have the freedom to
copy and modify this GNU manual.  Buying copies from the FSF
supports it in developing GNU and promoting software freedom.''-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
  pre.display { font-family:inherit }
  pre.format  { font-family:inherit }
  pre.smalldisplay { font-family:inherit; font-size:smaller }
  pre.smallformat  { font-family:inherit; font-size:smaller }
  pre.smallexample { font-size:smaller }
  pre.smalllisp    { font-size:smaller }
  span.sc    { font-variant:small-caps }
  span.roman { font-family:serif; font-weight:normal; } 
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
--></style>
<link rel="stylesheet" type="text/css" href="../cs.css">
</head>
<body>
<div class="node">
<a name="Pattern-Matching"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="I_002fO-Overview.html#I_002fO-Overview">I/O Overview</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Searching-and-Sorting.html#Searching-and-Sorting">Searching and Sorting</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="index.html#Top">Top</a>
<hr>
</div>

<!-- %MENU% Matching shell ``globs'' and regular expressions -->
<h2 class="chapter">10 Pattern Matching</h2>

<p>The GNU C Library provides pattern matching facilities for two kinds of
patterns: regular expressions and file-name wildcards.  The library also
provides a facility for expanding variable and command references and
parsing text into words in the way the shell does.

<ul class="menu">
<li><a accesskey="1" href="Wildcard-Matching.html#Wildcard-Matching">Wildcard Matching</a>:     Matching a wildcard pattern against a single string. 
<li><a accesskey="2" href="Globbing.html#Globbing">Globbing</a>:              Finding the files that match a wildcard pattern. 
<li><a accesskey="3" href="Regular-Expressions.html#Regular-Expressions">Regular Expressions</a>:   Matching regular expressions against strings. 
<li><a accesskey="4" href="Word-Expansion.html#Word-Expansion">Word Expansion</a>:        Expanding shell variables, nested commands,
			    arithmetic, and wildcards. 
			    This is what the shell does with shell commands. 
</ul>

   </body></html>

