Sophie

Sophie

distrib > Mandriva > current > i586 > media > main-updates > by-pkgid > f51238514e2abe817779ad2fe01b0759 > files > 44

icu-doc-4.4-2.1mdv2010.2.i586.rpm

<!-- This comment will put IE 6, 7 and 8 in quirks mode -->
<!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"/>
<title>ICU 4.4: BoyerMooreSearch Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javaScript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body onload='searchBox.OnSelectItem(0);'>
<!-- Generated by Doxygen 1.6.1 -->
<script type="text/javascript"><!--
var searchBox = new SearchBox("searchBox", "search",false,'Search');
--></script>
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <img id="MSearchSelect" src="search/search.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)"/>
        <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
        </div>
      </li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="classes.html"><span>Data&nbsp;Structure&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>BoyerMooreSearch Class Reference</h1><!-- doxytag: class="BoyerMooreSearch" --><!-- doxytag: inherits="UObject" -->
<p><a class="el" href="classBoyerMooreSearch.html" title="BoyerMooreSearch.">BoyerMooreSearch</a>.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="bmsearch_8h_source.html">bmsearch.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for BoyerMooreSearch:</div>
<div class="dynsection">
 <div class="center">
  <img src="classBoyerMooreSearch.gif" usemap="#BoyerMooreSearch_map" alt=""/>
  <map id="BoyerMooreSearch_map" name="BoyerMooreSearch_map">
<area href="classUObject.html" alt="UObject" shape="rect" coords="0,56,124,80"/>
<area href="classUMemory.html" alt="UMemory" shape="rect" coords="0,0,124,24"/>
</map>
 </div>
</div>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoyerMooreSearch.html#a332f1fe871a374a51ef5c67558234080">BoyerMooreSearch</a> (<a class="el" href="classCollData.html">CollData</a> *theData, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;patternString, const <a class="el" href="classUnicodeString.html">UnicodeString</a> *targetString, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct a <code><a class="el" href="classBoyerMooreSearch.html" title="BoyerMooreSearch.">BoyerMooreSearch</a></code> object.  <a href="#a332f1fe871a374a51ef5c67558234080"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoyerMooreSearch.html#a7b5616443bbba8b7ec88f383de45ddb6">~BoyerMooreSearch</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The desstructor.  <a href="#a7b5616443bbba8b7ec88f383de45ddb6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoyerMooreSearch.html#ab6a4e76423cbafe07465805f2899cd6f">empty</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Test the pattern to see if it generates any CEs.  <a href="#ab6a4e76423cbafe07465805f2899cd6f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoyerMooreSearch.html#a65d2f4ccb9107fbeb4fb5abe41029b04">search</a> (int32_t offset, int32_t &amp;start, int32_t &amp;end)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Search for the pattern string in the target string.  <a href="#a65d2f4ccb9107fbeb4fb5abe41029b04"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoyerMooreSearch.html#a86045ca4487146520c2aaf75974ae102">setTargetString</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> *targetString, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the target string for the match.  <a href="#a86045ca4487146520c2aaf75974ae102"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCollData.html">CollData</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoyerMooreSearch.html#a93107993396145ab62948701bfe26816">getData</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the <code><a class="el" href="classCollData.html" title="CollData.">CollData</a></code> object used for searching.  <a href="#a93107993396145ab62948701bfe26816"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCEList.html">CEList</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoyerMooreSearch.html#a8cf795309a69e33c564e134d111bcf0a">getPatternCEs</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the CEs generated by the pattern string.  <a href="#a8cf795309a69e33c564e134d111bcf0a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">BadCharacterTable *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoyerMooreSearch.html#a1c8c9dc3464f6a3917f89746af96be3d">getBadCharacterTable</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the <code>BadCharacterTable</code> object computed for the pattern string.  <a href="#a1c8c9dc3464f6a3917f89746af96be3d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">GoodSuffixTable *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoyerMooreSearch.html#a50250100d6fe9cb2cf1972355af7662a">getGoodSuffixTable</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the <code>GoodSuffixTable</code> object computed for the pattern string.  <a href="#a50250100d6fe9cb2cf1972355af7662a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="utypes_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoyerMooreSearch.html#a8901e315d00cf583e3b697c72683fdcc">getDynamicClassID</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="classUObject.html" title="UObject is the common ICU &quot;boilerplate&quot; class.">UObject</a> glue.  <a href="#a8901e315d00cf583e3b697c72683fdcc"></a><br/></td></tr>
<tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="utypes_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoyerMooreSearch.html#abd23e2c725eb32113903024a11b7f6f7">getStaticClassID</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="classUObject.html" title="UObject is the common ICU &quot;boilerplate&quot; class.">UObject</a> glue.  <a href="#abd23e2c725eb32113903024a11b7f6f7"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p><a class="el" href="classBoyerMooreSearch.html" title="BoyerMooreSearch.">BoyerMooreSearch</a>. </p>
<p>This object holds the information needed to do a Collation sensitive Boyer-Moore search. It encapulates the pattern, the "bad character" and "good suffix" tables, the Collator-based data needed to compute them, and a reference to the text being searched.</p>
<p>To do a search, you fist need to get a <code><a class="el" href="classCollData.html" title="CollData.">CollData</a></code> object by calling <code><a class="el" href="classCollData.html#aebf674446064095bc2527ab1c0e93dd1" title="Construct a CollData object.">CollData::open</a></code>. Then you construct a <code><a class="el" href="classBoyerMooreSearch.html" title="BoyerMooreSearch.">BoyerMooreSearch</a></code> object from the <code><a class="el" href="classCollData.html" title="CollData.">CollData</a></code> object, the pattern string and the target string. Then you call the <code>search</code> method. Here's a code sample:</p>
<pre>
 void boyerMooreExample(UCollator *collator, UnicodeString *pattern, UnicodeString *target)
 {
     UErrorCode status = U_ZERO_ERROR;
     <a class="el" href="classCollData.html" title="CollData.">CollData</a> *collData = CollData::open(collator, status);</pre><pre>     if (<a class="el" href="utypes_8h.html#a4d202200b6aa6f3c965ea370e0c8155f" title="Does the error code indicate a failure?">U_FAILURE(status)</a>) {
         // could not create a <a class="el" href="classCollData.html" title="CollData.">CollData</a> object
         return;
     }</pre><pre>     <a class="el" href="classBoyerMooreSearch.html" title="BoyerMooreSearch.">BoyerMooreSearch</a> *search = new BoyerMooreSearch(collData, *patternString, target, status);</pre><pre>     if (<a class="el" href="utypes_8h.html#a4d202200b6aa6f3c965ea370e0c8155f" title="Does the error code indicate a failure?">U_FAILURE(status)</a>) {
         // could not create a <a class="el" href="classBoyerMooreSearch.html" title="BoyerMooreSearch.">BoyerMooreSearch</a> object
         CollData::close(collData);
         return;
     }</pre><pre>     int32_t offset = 0, start = -1, end = -1;</pre><pre>     // Find all matches
     while (search-&gt;search(offset, start, end)) {
         // process the match between start and end
         ...
         // advance past the match
         offset = end; 
     }</pre><pre>     // at this point, if offset == 0, there were no matches
     if (offset == 0) {
         // handle the case of no matches
     }</pre><pre>     delete search;
     CollData::close(collData);</pre><pre>     // <a class="el" href="classCollData.html" title="CollData.">CollData</a> objects are cached, so the call to
     // <a class="el" href="classCollData.html#ace312528a2209fa44a65c914f7c20f84" title="Release a CollData object.">CollData::close</a> doesn't delete the object.
     // Call this if you don't need the object any more.
     <a class="el" href="classCollData.html#aaa122c473c2459af3dce95a1e26e6ede" title="CollData objects are expensive to compute, and so may be cached.">CollData::flushCollDataCache()</a>;
 }
 </pre><p>NOTE: This is a technology preview. The final version of this API may not bear any resenblence to this API.</p>
<p>Knows linitations: 1) Backwards searching has not been implemented.</p>
<p>2) For Han and Hangul characters, this code ignores any Collation tailorings. In general, this isn't a problem, but in Korean locals, at strength 1, Hangul characters are tailored to be equal to Han characters with the same pronounciation. Because this code ignroes tailorings, searching for a Hangul character will not find a Han character and visa-versa.</p>
<p>3) In some cases, searching for a pattern that needs to be normalized and ends in a discontiguous contraction may fail. The only known cases of this are with the Tibetan script. For example searching for the pattern "\u0F7F\u0F80\u0F81\u0F82\u0F83\u0F84\u0F85" will fail. (This case is artificial. We've been unable to find a pratical, real-world example of this failure.)</p>
<dl class="internal"><dt><b><a class="el" href="internal.html#_internal000155">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. ICU 4.0.1 technology preview</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classCollData.html" title="CollData.">CollData</a> </dd></dl>

<p>Definition at line <a class="el" href="bmsearch_8h_source.html#l00107">107</a> of file <a class="el" href="bmsearch_8h_source.html">bmsearch.h</a>.</p>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a332f1fe871a374a51ef5c67558234080"></a><!-- doxytag: member="BoyerMooreSearch::BoyerMooreSearch" ref="a332f1fe871a374a51ef5c67558234080" args="(CollData *theData, const UnicodeString &amp;patternString, const UnicodeString *targetString, UErrorCode &amp;status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BoyerMooreSearch::BoyerMooreSearch </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classCollData.html">CollData</a> *&nbsp;</td>
          <td class="paramname"> <em>theData</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>patternString</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> *&nbsp;</td>
          <td class="paramname"> <em>targetString</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>status</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Construct a <code><a class="el" href="classBoyerMooreSearch.html" title="BoyerMooreSearch.">BoyerMooreSearch</a></code> object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>theData</em>&nbsp;</td><td>- A <code><a class="el" href="classCollData.html" title="CollData.">CollData</a></code> object holding the Collator-sensitive data </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>patternString</em>&nbsp;</td><td>- the string for which to search </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>targetString</em>&nbsp;</td><td>- the string in which to search or <code>NULL</code> if youu will set it later by calling <code>setTargetString</code>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>status</em>&nbsp;</td><td>- will be set if any errors occur.</td></tr>
  </table>
  </dd>
</dl>
<p>Note: if on return, status is set to an error code, the only safe thing to do with this object is to call the destructor.</p>
<dl class="internal"><dt><b><a class="el" href="internal.html#_internal000156">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. ICU 4.0.1 technology preview </dd></dl>

</div>
</div>
<a class="anchor" id="a7b5616443bbba8b7ec88f383de45ddb6"></a><!-- doxytag: member="BoyerMooreSearch::~BoyerMooreSearch" ref="a7b5616443bbba8b7ec88f383de45ddb6" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BoyerMooreSearch::~BoyerMooreSearch </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The desstructor. </p>
<dl class="internal"><dt><b><a class="el" href="internal.html#_internal000157">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. ICU 4.0.1 technology preview </dd></dl>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ab6a4e76423cbafe07465805f2899cd6f"></a><!-- doxytag: member="BoyerMooreSearch::empty" ref="ab6a4e76423cbafe07465805f2899cd6f" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> BoyerMooreSearch::empty </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Test the pattern to see if it generates any CEs. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd><code>TRUE</code> if the pattern string did not generate any CEs</dd></dl>
<dl class="internal"><dt><b><a class="el" href="internal.html#_internal000158">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. ICU 4.0.1 technology preview </dd></dl>

</div>
</div>
<a class="anchor" id="a1c8c9dc3464f6a3917f89746af96be3d"></a><!-- doxytag: member="BoyerMooreSearch::getBadCharacterTable" ref="a1c8c9dc3464f6a3917f89746af96be3d" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BadCharacterTable* BoyerMooreSearch::getBadCharacterTable </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the <code>BadCharacterTable</code> object computed for the pattern string. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the <code>BadCharacterTable</code> object.</dd></dl>
<dl class="internal"><dt><b><a class="el" href="internal.html#_internal000163">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. ICU 4.0.1 technology preview </dd></dl>

</div>
</div>
<a class="anchor" id="a93107993396145ab62948701bfe26816"></a><!-- doxytag: member="BoyerMooreSearch::getData" ref="a93107993396145ab62948701bfe26816" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCollData.html">CollData</a>* BoyerMooreSearch::getData </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the <code><a class="el" href="classCollData.html" title="CollData.">CollData</a></code> object used for searching. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the <code><a class="el" href="classCollData.html" title="CollData.">CollData</a></code> object used for searching</dd></dl>
<dl class="internal"><dt><b><a class="el" href="internal.html#_internal000161">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. ICU 4.0.1 technology preview </dd></dl>

</div>
</div>
<a class="anchor" id="a8901e315d00cf583e3b697c72683fdcc"></a><!-- doxytag: member="BoyerMooreSearch::getDynamicClassID" ref="a8901e315d00cf583e3b697c72683fdcc" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="utypes_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a> BoyerMooreSearch::getDynamicClassID </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p><a class="el" href="classUObject.html" title="UObject is the common ICU &quot;boilerplate&quot; class.">UObject</a> glue. </p>
<p>.. </p>
<dl class="internal"><dt><b><a class="el" href="internal.html#_internal000165">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. ICU 4.0.1 technology preview </dd></dl>

<p>Implements <a class="el" href="classUObject.html#a9b1acc95efd89cb86ec31f2dc947a262">UObject</a>.</p>

</div>
</div>
<a class="anchor" id="a50250100d6fe9cb2cf1972355af7662a"></a><!-- doxytag: member="BoyerMooreSearch::getGoodSuffixTable" ref="a50250100d6fe9cb2cf1972355af7662a" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GoodSuffixTable* BoyerMooreSearch::getGoodSuffixTable </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the <code>GoodSuffixTable</code> object computed for the pattern string. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the <code>GoodSuffixTable</code> object computed for the pattern string.</dd></dl>
<dl class="internal"><dt><b><a class="el" href="internal.html#_internal000164">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. ICU 4.0.1 technology preview </dd></dl>

</div>
</div>
<a class="anchor" id="a8cf795309a69e33c564e134d111bcf0a"></a><!-- doxytag: member="BoyerMooreSearch::getPatternCEs" ref="a8cf795309a69e33c564e134d111bcf0a" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCEList.html">CEList</a>* BoyerMooreSearch::getPatternCEs </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the CEs generated by the pattern string. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a <code><a class="el" href="classCEList.html" title="This object holds a list of CEs generated from a particular UnicodeString.">CEList</a></code> object holding the CEs generated by the pattern string.</dd></dl>
<dl class="internal"><dt><b><a class="el" href="internal.html#_internal000162">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. ICU 4.0.1 technology preview </dd></dl>

</div>
</div>
<a class="anchor" id="abd23e2c725eb32113903024a11b7f6f7"></a><!-- doxytag: member="BoyerMooreSearch::getStaticClassID" ref="abd23e2c725eb32113903024a11b7f6f7" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="utypes_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a> BoyerMooreSearch::getStaticClassID </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p><a class="el" href="classUObject.html" title="UObject is the common ICU &quot;boilerplate&quot; class.">UObject</a> glue. </p>
<p>.. </p>
<dl class="internal"><dt><b><a class="el" href="internal.html#_internal000166">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. ICU 4.0.1 technology preview </dd></dl>

</div>
</div>
<a class="anchor" id="a65d2f4ccb9107fbeb4fb5abe41029b04"></a><!-- doxytag: member="BoyerMooreSearch::search" ref="a65d2f4ccb9107fbeb4fb5abe41029b04" args="(int32_t offset, int32_t &amp;start, int32_t &amp;end)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> BoyerMooreSearch::search </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t &amp;&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t &amp;&nbsp;</td>
          <td class="paramname"> <em>end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Search for the pattern string in the target string. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>offset</em>&nbsp;</td><td>- the offset in the target string at which to begin the search </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>- will be set to the starting offset of the match, or -1 if there's no match </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>- will be set to the ending offset of the match, or -1 if there's no match</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><code>TRUE</code> if the match succeeds, <code>FALSE</code> otherwise.</dd></dl>
<dl class="internal"><dt><b><a class="el" href="internal.html#_internal000159">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. ICU 4.0.1 technology preview </dd></dl>

</div>
</div>
<a class="anchor" id="a86045ca4487146520c2aaf75974ae102"></a><!-- doxytag: member="BoyerMooreSearch::setTargetString" ref="a86045ca4487146520c2aaf75974ae102" args="(const UnicodeString *targetString, UErrorCode &amp;status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void BoyerMooreSearch::setTargetString </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> *&nbsp;</td>
          <td class="paramname"> <em>targetString</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>status</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the target string for the match. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>targetString</em>&nbsp;</td><td>- the new target string </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>status</em>&nbsp;</td><td>- will be set if any errors occur.</td></tr>
  </table>
  </dd>
</dl>
<dl class="internal"><dt><b><a class="el" href="internal.html#_internal000160">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. ICU 4.0.1 technology preview </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="bmsearch_8h_source.html">bmsearch.h</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">&nbsp;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&nbsp;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&nbsp;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&nbsp;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&nbsp;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&nbsp;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&nbsp;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&nbsp;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&nbsp;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&nbsp;</span>Defines</a></div>

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

<hr size="1"/><address style="text-align: right;"><small>Generated on 16 Mar 2010 for ICU 4.4 by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
</body>
</html>