<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.3"/>
<title>Lucene.Net: Contrib.Regex.CSharpRegexCapabilities Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="lucene-net-icon-128x128.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">Lucene.Net
   &#160;<span id="projectnumber">3.0.3</span>
   </div>
   <div id="projectbrief">Lucene.Net is a .NET port of the Java Lucene Indexing Library</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.3 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="Index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Packages</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Properties</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespace_contrib.html">Contrib</a></li><li class="navelem"><a class="el" href="namespace_contrib_1_1_regex.html">Regex</a></li><li class="navelem"><a class="el" href="class_contrib_1_1_regex_1_1_c_sharp_regex_capabilities.html">CSharpRegexCapabilities</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="class_contrib_1_1_regex_1_1_c_sharp_regex_capabilities-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Contrib.Regex.CSharpRegexCapabilities Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>C# <a class="el" href="namespace_contrib_1_1_regex.html">Regex</a> based implementation of <a class="el" href="interface_contrib_1_1_regex_1_1_i_regex_capabilities.html" title="Defines basic operations needed by RegexQuery for a regular expression implementation. ">IRegexCapabilities</a>.  
 <a href="class_contrib_1_1_regex_1_1_c_sharp_regex_capabilities.html#details">More...</a></p>

<p>Inherits <a class="el" href="interface_contrib_1_1_regex_1_1_i_regex_capabilities.html">Contrib.Regex.IRegexCapabilities</a>, and IEquatable&lt; CSharpRegexCapabilities &gt;.</p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ad3e42856a16388081795b5ad0bd095ab"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_contrib_1_1_regex_1_1_c_sharp_regex_capabilities.html#ad3e42856a16388081795b5ad0bd095ab">Compile</a> (string pattern)</td></tr>
<tr class="memdesc:ad3e42856a16388081795b5ad0bd095ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by the constructor of <a class="el" href="class_contrib_1_1_regex_1_1_regex_term_enum.html" title="Subclass of FilteredTermEnum for enumerating all terms that match the specified regular expression te...">RegexTermEnum</a> allowing implementations to cache a compiled version of the regular expression pattern.  <a href="#ad3e42856a16388081795b5ad0bd095ab"></a><br/></td></tr>
<tr class="separator:ad3e42856a16388081795b5ad0bd095ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab58a585e2dc11b6f2549f4b49b9ff68"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_contrib_1_1_regex_1_1_c_sharp_regex_capabilities.html#aab58a585e2dc11b6f2549f4b49b9ff68">Match</a> (string s)</td></tr>
<tr class="memdesc:aab58a585e2dc11b6f2549f4b49b9ff68"><td class="mdescLeft">&#160;</td><td class="mdescRight">True on match.  <a href="#aab58a585e2dc11b6f2549f4b49b9ff68"></a><br/></td></tr>
<tr class="separator:aab58a585e2dc11b6f2549f4b49b9ff68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adfdbe2af51328ef775fe9cc8dabb3662"><td class="memItemLeft" align="right" valign="top">string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_contrib_1_1_regex_1_1_c_sharp_regex_capabilities.html#adfdbe2af51328ef775fe9cc8dabb3662">Prefix</a> ()</td></tr>
<tr class="memdesc:adfdbe2af51328ef775fe9cc8dabb3662"><td class="mdescLeft">&#160;</td><td class="mdescRight">A wise prefix implementation can reduce the term enumeration (and thus performance) of <a class="el" href="class_contrib_1_1_regex_1_1_regex_query.html" title="Regular expression based query. ">RegexQuery</a> dramatically.  <a href="#adfdbe2af51328ef775fe9cc8dabb3662"></a><br/></td></tr>
<tr class="separator:adfdbe2af51328ef775fe9cc8dabb3662"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a8d5637213fdb9ad2abfbe3408e2b3f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_contrib_1_1_regex_1_1_c_sharp_regex_capabilities.html#a5a8d5637213fdb9ad2abfbe3408e2b3f">Equals</a> (<a class="el" href="class_contrib_1_1_regex_1_1_c_sharp_regex_capabilities.html">CSharpRegexCapabilities</a> other)</td></tr>
<tr class="memdesc:a5a8d5637213fdb9ad2abfbe3408e2b3f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates whether the current object is equal to another object of the same type.  <a href="#a5a8d5637213fdb9ad2abfbe3408e2b3f"></a><br/></td></tr>
<tr class="separator:a5a8d5637213fdb9ad2abfbe3408e2b3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af849467d0c53018270174dfa722cce80"><td class="memItemLeft" align="right" valign="top">override bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_contrib_1_1_regex_1_1_c_sharp_regex_capabilities.html#af849467d0c53018270174dfa722cce80">Equals</a> (object obj)</td></tr>
<tr class="separator:af849467d0c53018270174dfa722cce80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a831f9ed6c977ffd301e5e8d0b94336ba"><td class="memItemLeft" align="right" valign="top">override int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_contrib_1_1_regex_1_1_c_sharp_regex_capabilities.html#a831f9ed6c977ffd301e5e8d0b94336ba">GetHashCode</a> ()</td></tr>
<tr class="separator:a831f9ed6c977ffd301e5e8d0b94336ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>C# <a class="el" href="namespace_contrib_1_1_regex.html">Regex</a> based implementation of <a class="el" href="interface_contrib_1_1_regex_1_1_i_regex_capabilities.html" title="Defines basic operations needed by RegexQuery for a regular expression implementation. ">IRegexCapabilities</a>. </p>
<p><a href="http://www.java2s.com/Open-Source/Java-Document/Net/lucene-connector/org/apache/lucene/search/regex/JavaUtilRegexCapabilities.java.htm">http://www.java2s.com/Open-Source/Java-Document/Net/lucene-connector/org/apache/lucene/search/regex/JavaUtilRegexCapabilities.java.htm</a></p>

<p>Definition at line <a class="el" href="_c_sharp_regex_capabilities_8cs_source.html#l00026">26</a> of file <a class="el" href="_c_sharp_regex_capabilities_8cs_source.html">CSharpRegexCapabilities.cs</a>.</p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="ad3e42856a16388081795b5ad0bd095ab"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Contrib.Regex.CSharpRegexCapabilities.Compile </td>
          <td>(</td>
          <td class="paramtype">string&#160;</td>
          <td class="paramname"><em>pattern</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Called by the constructor of <a class="el" href="class_contrib_1_1_regex_1_1_regex_term_enum.html" title="Subclass of FilteredTermEnum for enumerating all terms that match the specified regular expression te...">RegexTermEnum</a> allowing implementations to cache a compiled version of the regular expression pattern. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pattern</td><td>regular expression pattern</td></tr>
  </table>
  </dd>
</dl>

<p>Implements <a class="el" href="interface_contrib_1_1_regex_1_1_i_regex_capabilities.html#aafc9a2664a2f7583fc7a79ad91d9f381">Contrib.Regex.IRegexCapabilities</a>.</p>

<p>Definition at line <a class="el" href="_c_sharp_regex_capabilities_8cs_source.html#l00035">35</a> of file <a class="el" href="_c_sharp_regex_capabilities_8cs_source.html">CSharpRegexCapabilities.cs</a>.</p>

</div>
</div>
<a class="anchor" id="a5a8d5637213fdb9ad2abfbe3408e2b3f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Contrib.Regex.CSharpRegexCapabilities.Equals </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_contrib_1_1_regex_1_1_c_sharp_regex_capabilities.html">CSharpRegexCapabilities</a>&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Indicates whether the current object is equal to another object of the same type. </p>
<dl class="section return"><dt>Returns</dt><dd>true if the current object is equal to the <em>other</em>  parameter; otherwise, false. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">other</td><td>An object to compare with this object</td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_c_sharp_regex_capabilities_8cs_source.html#l00069">69</a> of file <a class="el" href="_c_sharp_regex_capabilities_8cs_source.html">CSharpRegexCapabilities.cs</a>.</p>

</div>
</div>
<a class="anchor" id="af849467d0c53018270174dfa722cce80"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">override bool Contrib.Regex.CSharpRegexCapabilities.Equals </td>
          <td>(</td>
          <td class="paramtype">object&#160;</td>
          <td class="paramname"><em>obj</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="_c_sharp_regex_capabilities_8cs_source.html#l00080">80</a> of file <a class="el" href="_c_sharp_regex_capabilities_8cs_source.html">CSharpRegexCapabilities.cs</a>.</p>

</div>
</div>
<a class="anchor" id="a831f9ed6c977ffd301e5e8d0b94336ba"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">override int Contrib.Regex.CSharpRegexCapabilities.GetHashCode </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="_c_sharp_regex_capabilities_8cs_source.html#l00086">86</a> of file <a class="el" href="_c_sharp_regex_capabilities_8cs_source.html">CSharpRegexCapabilities.cs</a>.</p>

</div>
</div>
<a class="anchor" id="aab58a585e2dc11b6f2549f4b49b9ff68"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Contrib.Regex.CSharpRegexCapabilities.Match </td>
          <td>(</td>
          <td class="paramtype">string&#160;</td>
          <td class="paramname"><em>s</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>True on match. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">s</td><td>text to match</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true on match</dd></dl>

<p>Implements <a class="el" href="interface_contrib_1_1_regex_1_1_i_regex_capabilities.html#ad5584356ed3afd39151e74d6f639c400">Contrib.Regex.IRegexCapabilities</a>.</p>

<p>Definition at line <a class="el" href="_c_sharp_regex_capabilities_8cs_source.html#l00046">46</a> of file <a class="el" href="_c_sharp_regex_capabilities_8cs_source.html">CSharpRegexCapabilities.cs</a>.</p>

</div>
</div>
<a class="anchor" id="adfdbe2af51328ef775fe9cc8dabb3662"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">string Contrib.Regex.CSharpRegexCapabilities.Prefix </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>A wise prefix implementation can reduce the term enumeration (and thus performance) of <a class="el" href="class_contrib_1_1_regex_1_1_regex_query.html" title="Regular expression based query. ">RegexQuery</a> dramatically. </p>
<dl class="section return"><dt>Returns</dt><dd>static non-regex prefix of the pattern last passed to <a class="el" href="interface_contrib_1_1_regex_1_1_i_regex_capabilities.html#aafc9a2664a2f7583fc7a79ad91d9f381" title="Called by the constructor of RegexTermEnum allowing implementations to cache a compiled version of th...">IRegexCapabilities.Compile</a>. May return null</dd></dl>

<p>Implements <a class="el" href="interface_contrib_1_1_regex_1_1_i_regex_capabilities.html#ad106e159f4212609f099b20d6c48fde8">Contrib.Regex.IRegexCapabilities</a>.</p>

<p>Definition at line <a class="el" href="_c_sharp_regex_capabilities_8cs_source.html#l00057">57</a> of file <a class="el" href="_c_sharp_regex_capabilities_8cs_source.html">CSharpRegexCapabilities.cs</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>contrib/Regex/<a class="el" href="_c_sharp_regex_capabilities_8cs_source.html">CSharpRegexCapabilities.cs</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Jan 3 2013 02:12:47 for Lucene.Net by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.3
</small></address>
</body>
</html>
