Sophie

Sophie

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

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: UnicodeSet 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>UnicodeSet Class Reference</h1><!-- doxytag: class="UnicodeSet" --><!-- doxytag: inherits="UnicodeFilter" -->
<p>A mutable set of Unicode characters and multicharacter strings.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="uniset_8h_source.html">uniset.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for UnicodeSet:</div>
<div class="dynsection">
 <div class="center">
  <img src="classUnicodeSet.gif" usemap="#UnicodeSet_map" alt=""/>
  <map id="UnicodeSet_map" name="UnicodeSet_map">
<area href="classUnicodeFilter.html" alt="UnicodeFilter" shape="rect" coords="57,168,162,192"/>
<area href="classUnicodeFunctor.html" alt="UnicodeFunctor" shape="rect" coords="0,112,105,136"/>
<area href="classUnicodeMatcher.html" alt="UnicodeMatcher" shape="rect" coords="115,112,220,136"/>
<area href="classUObject.html" alt="UObject" shape="rect" coords="0,56,105,80"/>
<area href="classUMemory.html" alt="UMemory" shape="rect" coords="0,0,105,24"/>
</map>
 </div>
</div>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="classUnicodeSet.html#ad63d2078b9f1085271e23deae9798527a1edea65cb1a0b012dc6fff9ac49e4fa9">MIN_VALUE</a> =  0, 
<a class="el" href="classUnicodeSet.html#ad63d2078b9f1085271e23deae9798527a2c64b96c719b41e29724b22acaf6859b">MAX_VALUE</a> =  0x10ffff
 }</td></tr>
<tr><td colspan="2"><h2>Public Member Functions</h2></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="classUnicodeSet.html#ad2987ff72267bd6692c57be0f0e39418">isBogus</a> (void) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determine if this object contains a valid set.  <a href="#ad2987ff72267bd6692c57be0f0e39418"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a3ade624e4b056cb62cc92ed1d945425a">setToBogus</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Make this <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> object invalid.  <a href="#a3ade624e4b056cb62cc92ed1d945425a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a0a9d8b6532d6c43395e4337cc31c0445">UnicodeSet</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructs an empty set.  <a href="#a0a9d8b6532d6c43395e4337cc31c0445"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a8644385f40e8005761184b4b2c2f29cc">UnicodeSet</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructs a set containing the given range.  <a href="#a8644385f40e8005761184b4b2c2f29cc"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#ae1905a055c32f34619a4355aa6868b6e">UnicodeSet</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;pattern, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructs a set from the given pattern.  <a href="#ae1905a055c32f34619a4355aa6868b6e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a8f0732d6cb949ac1dd77f9a571dff1be">UnicodeSet</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;pattern, uint32_t options, const <a class="el" href="classSymbolTable.html">SymbolTable</a> *symbols, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructs a set from the given pattern.  <a href="#a8f0732d6cb949ac1dd77f9a571dff1be"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#afd5eb61da4a0ea041a933896c458ac99">UnicodeSet</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;pattern, <a class="el" href="classParsePosition.html">ParsePosition</a> &amp;pos, uint32_t options, const <a class="el" href="classSymbolTable.html">SymbolTable</a> *symbols, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructs a set from the given pattern.  <a href="#afd5eb61da4a0ea041a933896c458ac99"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a3d3ae73b57fd6b7609f88177a19034f8">UnicodeSet</a> (const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;o)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructs a set that is identical to the given <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>.  <a href="#a3d3ae73b57fd6b7609f88177a19034f8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a32f201258378210ede96ad08f8676c82">~UnicodeSet</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructs the set.  <a href="#a32f201258378210ede96ad08f8676c82"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a2d1faed072a21c52054507d024d7700d">operator=</a> (const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;o)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assigns this object to be a copy of another.  <a href="#a2d1faed072a21c52054507d024d7700d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a4c6b2c9216b9e42f4d69ed413aaa2af4">operator==</a> (const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;o) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compares the specified object with this set for equality.  <a href="#a4c6b2c9216b9e42f4d69ed413aaa2af4"></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="classUnicodeSet.html#a003c9c3c25134385dcc980be40848e6c">operator!=</a> (const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;o) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compares the specified object with this set for equality.  <a href="#a003c9c3c25134385dcc980be40848e6c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classUnicodeFunctor.html">UnicodeFunctor</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a4a85692219bd42074445974f10ca9b9e">clone</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a copy of this object.  <a href="#a4a85692219bd42074445974f10ca9b9e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual int32_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a530feed82c20c22bfa48e6130fccb139">hashCode</a> (void) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the hash code value for this set.  <a href="#a530feed82c20c22bfa48e6130fccb139"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a92b8fb5933616cb52ee0da08bb927ecc">toUSet</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Produce a USet * pointer for this <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>.  <a href="#a92b8fb5933616cb52ee0da08bb927ecc"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a62e24ae4792b422ade146d03c7a4b035">toUSet</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Produce a const USet * pointer for this <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>.  <a href="#a62e24ae4792b422ade146d03c7a4b035"></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="classUnicodeSet.html#af82d9e6251a46c6b4735af8b7cf1f3f3">isFrozen</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determines whether the set has been frozen (made immutable) or not.  <a href="#af82d9e6251a46c6b4735af8b7cf1f3f3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeFunctor.html">UnicodeFunctor</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a31085c50d5cb8fdc634ea01156f4f907">freeze</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Freeze the set (make it immutable).  <a href="#a31085c50d5cb8fdc634ea01156f4f907"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeFunctor.html">UnicodeFunctor</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a7099ee368fd521aab75b44d5150b6449">cloneAsThawed</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clone the set and make the clone mutable.  <a href="#a7099ee368fd521aab75b44d5150b6449"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a8f6461feeb82a7f9de81909c5ef85155">set</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Make this object represent the range <code>start - end</code>.  <a href="#a8f6461feeb82a7f9de81909c5ef85155"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a92ea00fbad175397371e02f0a4a7f6cc">applyPattern</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;pattern, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Modifies this set to represent the set specified by the given pattern, optionally ignoring white space.  <a href="#a92ea00fbad175397371e02f0a4a7f6cc"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a33aaa692e8d76a9544adb15576a76120">applyPattern</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;pattern, uint32_t options, const <a class="el" href="classSymbolTable.html">SymbolTable</a> *symbols, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Modifies this set to represent the set specified by the given pattern, optionally ignoring white space.  <a href="#a33aaa692e8d76a9544adb15576a76120"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#aca25277cd3feb80e72be77f6e169c50a">applyPattern</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;pattern, <a class="el" href="classParsePosition.html">ParsePosition</a> &amp;pos, uint32_t options, const <a class="el" href="classSymbolTable.html">SymbolTable</a> *symbols, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Parses the given pattern, starting at the given position.  <a href="#aca25277cd3feb80e72be77f6e169c50a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a7aa98466d94bcbdcfcf79f57e171c8e7">toPattern</a> (<a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;result, <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> escapeUnprintable=FALSE) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a string representation of this set.  <a href="#a7aa98466d94bcbdcfcf79f57e171c8e7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a642c4823b72d7fa64ebcda577a9cef8b">applyIntPropertyValue</a> (<a class="el" href="uchar_8h.html#ae40d616419e74ecc7c80a9febab03199">UProperty</a> prop, int32_t value, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;ec)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Modifies this set to contain those code points which have the given value for the given binary or enumerated property, as returned by u_getIntPropertyValue.  <a href="#a642c4823b72d7fa64ebcda577a9cef8b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a9f355f0695c6fc079328ec14b3131d62">applyPropertyAlias</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;prop, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;value, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;ec)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Modifies this set to contain those code points which have the given value for the given property.  <a href="#a9f355f0695c6fc079328ec14b3131d62"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual int32_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a6c3a6816ee9b470937073fec4d62f4f0">size</a> (void) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of elements in this set (its cardinality).  <a href="#a6c3a6816ee9b470937073fec4d62f4f0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a0e085f3f2b9a81dd88609e13edd5d8a5">isEmpty</a> (void) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns <code>true</code> if this set contains no elements.  <a href="#a0e085f3f2b9a81dd88609e13edd5d8a5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a5f83cbdf884770344420fb60e4f8e697">contains</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if this set contains the given character.  <a href="#a5f83cbdf884770344420fb60e4f8e697"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#ad3e92e0b5c8c673462a589791d57cc84">contains</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if this set contains every character of the given range.  <a href="#ad3e92e0b5c8c673462a589791d57cc84"></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="classUnicodeSet.html#a8d4091fe951ad4cbb3d557e37cf9cba5">contains</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;s) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns <code>true</code> if this set contains the given multicharacter string.  <a href="#a8d4091fe951ad4cbb3d557e37cf9cba5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a3823eb4598b4fbdf33c5671d447914db">containsAll</a> (const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;c) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if this set contains all the characters and strings of the given set.  <a href="#a3823eb4598b4fbdf33c5671d447914db"></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="classUnicodeSet.html#a224be3bc42df5b8a47c21b33c9ad7dc6">containsAll</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;s) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if this set contains all the characters of the given string.  <a href="#a224be3bc42df5b8a47c21b33c9ad7dc6"></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="classUnicodeSet.html#aa033cd3776450f747f5bf8beb0477c0e">containsNone</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if this set contains none of the characters of the given range.  <a href="#aa033cd3776450f747f5bf8beb0477c0e"></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="classUnicodeSet.html#aac49b81bc2081b71d3844053ef4a00e1">containsNone</a> (const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;c) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if this set contains none of the characters and strings of the given set.  <a href="#aac49b81bc2081b71d3844053ef4a00e1"></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="classUnicodeSet.html#a913f8afd4394c0786207a824c359291d">containsNone</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;s) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if this set contains none of the characters of the given string.  <a href="#a913f8afd4394c0786207a824c359291d"></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="classUnicodeSet.html#a5317db95daf21213341b6d8204dcb42c">containsSome</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if this set contains one or more of the characters in the given range.  <a href="#a5317db95daf21213341b6d8204dcb42c"></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="classUnicodeSet.html#a35ddc714c95fffa7650a10abb75be5d8">containsSome</a> (const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;s) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if this set contains one or more of the characters and strings of the given set.  <a href="#a35ddc714c95fffa7650a10abb75be5d8"></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="classUnicodeSet.html#ac30cbb03cc4b55cad432f838967324b3">containsSome</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;s) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if this set contains one or more of the characters of the given string.  <a href="#ac30cbb03cc4b55cad432f838967324b3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int32_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#ae429f2e852471745b94d6dba3dc38440">span</a> (const <a class="el" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> *s, int32_t length, <a class="el" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> spanCondition) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the length of the initial substring of the input string which consists only of characters and strings that are contained in this set (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE), or only of characters and strings that are not contained in this set (USET_SPAN_NOT_CONTAINED).  <a href="#ae429f2e852471745b94d6dba3dc38440"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int32_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#af8af2071003396abcb3051a8f4f82e59">span</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;s, int32_t start, <a class="el" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> spanCondition) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the end of the substring of the input string according to the USetSpanCondition.  <a href="#af8af2071003396abcb3051a8f4f82e59"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int32_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#ac95f19d6cc2033b05455838842337d43">spanBack</a> (const <a class="el" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> *s, int32_t length, <a class="el" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> spanCondition) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the start of the trailing substring of the input string which consists only of characters and strings that are contained in this set (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE), or only of characters and strings that are not contained in this set (USET_SPAN_NOT_CONTAINED).  <a href="#ac95f19d6cc2033b05455838842337d43"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int32_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a87b687130fcd69c5b6603fd8cbb76136">spanBack</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;s, int32_t limit, <a class="el" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> spanCondition) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the start of the substring of the input string according to the USetSpanCondition.  <a href="#a87b687130fcd69c5b6603fd8cbb76136"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int32_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#af8263eebbaa180e57b55bd909882a3b8">spanUTF8</a> (const char *s, int32_t length, <a class="el" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> spanCondition) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the length of the initial substring of the input string which consists only of characters and strings that are contained in this set (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE), or only of characters and strings that are not contained in this set (USET_SPAN_NOT_CONTAINED).  <a href="#af8263eebbaa180e57b55bd909882a3b8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int32_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a1d119bcbf7656d73aeb9267383952e9e">spanBackUTF8</a> (const char *s, int32_t length, <a class="el" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> spanCondition) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the start of the trailing substring of the input string which consists only of characters and strings that are contained in this set (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE), or only of characters and strings that are not contained in this set (USET_SPAN_NOT_CONTAINED).  <a href="#a1d119bcbf7656d73aeb9267383952e9e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="unimatch_8h.html#aa87e5322490b3e89e6913bfabd0390e6">UMatchDegree</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a3acd6cd4268004b9f3740a2373f411c4">matches</a> (const <a class="el" href="classReplaceable.html">Replaceable</a> &amp;text, int32_t &amp;offset, int32_t limit, <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> incremental)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Implement <a class="el" href="classUnicodeMatcher.html#ab712e496c0023237fbe38184d0424310" title="Return a UMatchDegree value indicating the degree of match for the given text at...">UnicodeMatcher::matches()</a>.  <a href="#a3acd6cd4268004b9f3740a2373f411c4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#ae2147b573bc056ea80cfe5365f6cab33">addMatchSetTo</a> (<a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;toUnionTo) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Implementation of <a class="el" href="classUnicodeMatcher.html" title="UnicodeMatcher defines a protocol for objects that can match a range of characters...">UnicodeMatcher</a> API.  <a href="#ae2147b573bc056ea80cfe5365f6cab33"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int32_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a379296bbc66c5c67d1c92d44ae866504">indexOf</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the index of the given character within this set, where the set is ordered by ascending code point.  <a href="#a379296bbc66c5c67d1c92d44ae866504"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#abdc0d3f52ce17855ca1a6eeed7ff19e2">charAt</a> (int32_t index) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the character at the given index within this set, where the set is ordered by ascending code point.  <a href="#abdc0d3f52ce17855ca1a6eeed7ff19e2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a1379c186ca8b314c91d20b7d9130fb7e">add</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds the specified range to this set if it is not already present.  <a href="#a1379c186ca8b314c91d20b7d9130fb7e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a63c37362765602f4f64e2d8f431eef71">add</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds the specified character to this set if it is not already present.  <a href="#a63c37362765602f4f64e2d8f431eef71"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a4fb243ad6c13d3f17b3330d1c521d35a">add</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;s)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds the specified multicharacter to this set if it is not already present.  <a href="#a4fb243ad6c13d3f17b3330d1c521d35a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#ac5d166441f38ae9e4c4e1737b92175bd">addAll</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;s)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds each of the characters in this string to the set.  <a href="#ac5d166441f38ae9e4c4e1737b92175bd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a3e385a1847ecfd9272a36a012eb0b36e">retainAll</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;s)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retains EACH of the characters in this string.  <a href="#a3e385a1847ecfd9272a36a012eb0b36e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a0365c770541d2c7928f3261b9be0bd0f">complementAll</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;s)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Complement EACH of the characters in this string.  <a href="#a0365c770541d2c7928f3261b9be0bd0f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a795feb71ef9e0e997c3a5ce369005c4a">removeAll</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;s)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove EACH of the characters in this string.  <a href="#a795feb71ef9e0e997c3a5ce369005c4a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a4edd71f0dd79a0114148c1da27e94494">retain</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retain only the elements in this set that are contained in the specified range.  <a href="#a4edd71f0dd79a0114148c1da27e94494"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#afd3410661ec259b9a760ee35ac56ef52">retain</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retain the specified character from this set if it is present.  <a href="#afd3410661ec259b9a760ee35ac56ef52"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#acc97ad34863f7b856851d38636d58f2a">remove</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removes the specified range from this set if it is present.  <a href="#acc97ad34863f7b856851d38636d58f2a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a3bb2e0286c5e092091f5d49bf7d9663c">remove</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removes the specified character from this set if it is present.  <a href="#a3bb2e0286c5e092091f5d49bf7d9663c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a4f2bddd13e9df82977954cb5cd3ffc22">remove</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;s)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removes the specified string from this set if it is present.  <a href="#a4f2bddd13e9df82977954cb5cd3ffc22"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a610f31a87d953d87820b19c2e30dc14f">complement</a> (void)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Inverts this set.  <a href="#a610f31a87d953d87820b19c2e30dc14f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#aba56631dbe1a84f42eb2c67711cee978">complement</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Complements the specified range in this set.  <a href="#aba56631dbe1a84f42eb2c67711cee978"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a6a18946f8b62ba998080cc2b82ae03f3">complement</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Complements the specified character in this set.  <a href="#a6a18946f8b62ba998080cc2b82ae03f3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#abd4843e788831beb8960ae0117d3d8ac">complement</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;s)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Complement the specified string in this set.  <a href="#abd4843e788831beb8960ae0117d3d8ac"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a6ee40747f030a8e24a5984425e334afc">addAll</a> (const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;c)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds all of the elements in the specified set to this set if they're not already present.  <a href="#a6ee40747f030a8e24a5984425e334afc"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a43902955210b895b62dfa47e945abf96">retainAll</a> (const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;c)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retains only the elements in this set that are contained in the specified set.  <a href="#a43902955210b895b62dfa47e945abf96"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a02e3e29b1412956ccebff4919c48ba4c">removeAll</a> (const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;c)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removes from this set all of its elements that are contained in the specified set.  <a href="#a02e3e29b1412956ccebff4919c48ba4c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a3e128521c00a9cf6b4c94558b87cebd2">complementAll</a> (const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;c)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Complements in this set all elements contained in the specified set.  <a href="#a3e128521c00a9cf6b4c94558b87cebd2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#aaa81304748c9f5bd62eff400c14a9d0f">clear</a> (void)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removes all of the elements from this set.  <a href="#aaa81304748c9f5bd62eff400c14a9d0f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a18bd83e5ae05494b4bbdc8030baa797d">closeOver</a> (int32_t attribute)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Close this set over the given attribute.  <a href="#a18bd83e5ae05494b4bbdc8030baa797d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a6eec59457382fa43c98de782186cce94">removeAllStrings</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove all strings from this set.  <a href="#a6eec59457382fa43c98de782186cce94"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual int32_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a60901508da179b56dfa8d16204f4c1f0">getRangeCount</a> (void) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Iteration method that returns the number of ranges contained in this set.  <a href="#a60901508da179b56dfa8d16204f4c1f0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a78847265b21d16ec663832bdf6cca8a8">getRangeStart</a> (int32_t index) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Iteration method that returns the first character in the specified range of this set.  <a href="#a78847265b21d16ec663832bdf6cca8a8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#ac03307b5f0118a421cd8dab47f12d780">getRangeEnd</a> (int32_t index) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Iteration method that returns the last character in the specified range of this set.  <a href="#ac03307b5f0118a421cd8dab47f12d780"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int32_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a6188e8d02a4197661aa5c10021a777c6">serialize</a> (uint16_t *dest, int32_t destCapacity, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;ec) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Serializes this set into an array of 16-bit integers.  <a href="#a6188e8d02a4197661aa5c10021a777c6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#ab50b1b38c127430e876ea6830f278bc7">compact</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reallocate this objects internal structures to take up the least possible space, without changing this object's value.  <a href="#ab50b1b38c127430e876ea6830f278bc7"></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="classUnicodeSet.html#a4e6c600a7a6bcc1d564d84d0fa512932">getDynamicClassID</a> (void) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Implement <a class="el" href="classUnicodeFunctor.html" title="UnicodeFunctor is an abstract base class for objects that perform match and/or replace...">UnicodeFunctor</a> API.  <a href="#a4e6c600a7a6bcc1d564d84d0fa512932"></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="classUnicodeSet.html">UnicodeSet</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a049d965a1c1f1f8fb1ce15c6b5586c4d">fromUSet</a> (<a class="el" href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *uset)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> pointer from a USet.  <a href="#a049d965a1c1f1f8fb1ce15c6b5586c4d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a9d1c1b063e274755de9acb28ed387df5">fromUSet</a> (const <a class="el" href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *uset)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> pointer from a const USet.  <a href="#a9d1c1b063e274755de9acb28ed387df5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a4ed67bc4ceb6838a965a04c68b39e918">resemblesPattern</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;pattern, int32_t pos)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return true if the given position, in the given pattern, appears to be the start of a <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> pattern.  <a href="#a4ed67bc4ceb6838a965a04c68b39e918"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classUnicodeSet.html">UnicodeSet</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#abcf0c42078b37520dc05664e5c514ee6">createFrom</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;s)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Makes a set from a multicharacter string.  <a href="#abcf0c42078b37520dc05664e5c514ee6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classUnicodeSet.html">UnicodeSet</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#a7ee55510aa41e114d559e65fc5d94a37">createFromAll</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;s)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Makes a set from each of the characters in the string.  <a href="#a7ee55510aa41e114d559e65fc5d94a37"></a><br/></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="classUnicodeSet.html#a1f7725a2e4de21e4cfff622fecc89716">getStaticClassID</a> (void)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the class ID for this class.  <a href="#a1f7725a2e4de21e4cfff622fecc89716"></a><br/></td></tr>
<tr><td colspan="2"><h2>Friends</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a05b983ce4c40b5724d1319ac4795eaf2"></a><!-- doxytag: member="UnicodeSet::USetAccess" ref="a05b983ce4c40b5724d1319ac4795eaf2" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><b>USetAccess</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac947f132cd502a07787bf35113956069"></a><!-- doxytag: member="UnicodeSet::UnicodeSetIterator" ref="ac947f132cd502a07787bf35113956069" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeSet.html#ac947f132cd502a07787bf35113956069">UnicodeSetIterator</a></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>A mutable set of Unicode characters and multicharacter strings. </p>
<p>Objects of this class represent <em>character classes</em> used in regular expressions. A character specifies a subset of Unicode code points. Legal code points are U+0000 to U+10FFFF, inclusive.</p>
<p>The <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> class is not designed to be subclassed.</p>
<p><code><a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a></code> supports two APIs. The first is the <em>operand</em> API that allows the caller to modify the value of a <code><a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a></code> object. It conforms to Java 2's <code>java.util.Set</code> interface, although <code><a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a></code> does not actually implement that interface. All methods of <code>Set</code> are supported, with the modification that they take a character range or single character instead of an <code>Object</code>, and they take a <code><a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a></code> instead of a <code>Collection</code>. The operand API may be thought of in terms of boolean logic: a boolean OR is implemented by <code>add</code>, a boolean AND is implemented by <code>retain</code>, a boolean XOR is implemented by <code>complement</code> taking an argument, and a boolean NOT is implemented by <code>complement</code> with no argument. In terms of traditional set theory function names, <code>add</code> is a union, <code>retain</code> is an intersection, <code>remove</code> is an asymmetric difference, and <code>complement</code> with no argument is a set complement with respect to the superset range <code>MIN_VALUE-MAX_VALUE</code></p>
<p>The second API is the <code><a class="el" href="classUnicodeSet.html#a92ea00fbad175397371e02f0a4a7f6cc" title="Modifies this set to represent the set specified by the given pattern, optionally...">applyPattern()</a></code>/<code><a class="el" href="classUnicodeSet.html#a7aa98466d94bcbdcfcf79f57e171c8e7" title="Returns a string representation of this set.">toPattern()</a></code> API from the <code>java.text.Format</code>-derived classes. Unlike the methods that add characters, add categories, and control the logic of the set, the method <code><a class="el" href="classUnicodeSet.html#a92ea00fbad175397371e02f0a4a7f6cc" title="Modifies this set to represent the set specified by the given pattern, optionally...">applyPattern()</a></code> sets all attributes of a <code><a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a></code> at once, based on a string pattern.</p>
<p><b>Pattern syntax</b></p>
<p>Patterns are accepted by the constructors and the <code><a class="el" href="classUnicodeSet.html#a92ea00fbad175397371e02f0a4a7f6cc" title="Modifies this set to represent the set specified by the given pattern, optionally...">applyPattern()</a></code> methods and returned by the <code><a class="el" href="classUnicodeSet.html#a7aa98466d94bcbdcfcf79f57e171c8e7" title="Returns a string representation of this set.">toPattern()</a></code> method. These patterns follow a syntax similar to that employed by version 8 regular expression character classes. Here are some simple examples:</p>
 <blockquote> <table border="1" cellspacing="3" cellpadding="3">
<tr align="top">
<td valign="top" align="left"><p><code>[]</code> </p>
</td><td valign="top"><p>No characters </p>
</td></tr>
<tr align="top">
<td valign="top" align="left"><p><code>[a]</code> </p>
</td><td valign="top"><p>The character 'a' </p>
</td></tr>
<tr align="top">
<td valign="top" align="left"><p><code>[ae]</code> </p>
</td><td valign="top"><p>The characters 'a' and 'e'  </p>
</td></tr>
<tr>
<td valign="top" align="left"><p><code>[a-e]</code> </p>
</td><td valign="top"><p>The characters 'a' through 'e' inclusive, in Unicode code point order  </p>
</td></tr>
<tr>
<td valign="top" align="left"><p><code>[\u4E01]</code> </p>
</td><td valign="top"><p>The character U+4E01  </p>
</td></tr>
<tr>
<td valign="top" align="left"><p><code>[a{ab}{ac}]</code> </p>
</td><td valign="top"><p>The character 'a' and the multicharacter strings "ab" and "ac"  </p>
</td></tr>
<tr>
<td valign="top" align="left"><p><code>[\p{Lu}]</code> </p>
</td><td valign="top"><p>All characters in the general category Uppercase Letter  </p>
</td></tr>
</table>
 </blockquote><p>Any character may be preceded by a backslash in order to remove any special meaning. White space characters, as defined by UCharacter.isWhitespace(), are ignored, unless they are escaped.</p>
<p>Property patterns specify a set of characters having a certain property as defined by the Unicode standard. Both the POSIX-like "[:Lu:]" and the Perl-like syntax "\\p{Lu}" are recognized. For a complete list of supported property patterns, see the User's Guide for <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> at <a href="http://icu-project.org/userguide/unicodeSet.html">http://icu-project.org/userguide/unicodeSet.html</a>. Actual determination of property data is defined by the underlying Unicode database as implemented by UCharacter.</p>
<p>Patterns specify individual characters, ranges of characters, and Unicode property sets. When elements are concatenated, they specify their union. To complement a set, place a '^' immediately after the opening '['. Property patterns are inverted by modifying their delimiters; "[:^foo]" and "\\P{foo}". In any other location, '^' has no special meaning.</p>
<p>Ranges are indicated by placing two a '-' between two characters, as in "a-z". This specifies the range of all characters from the left to the right, in Unicode order. If the left character is greater than or equal to the right character it is a syntax error. If a '-' occurs as the first character after the opening '[' or '[^', or if it occurs as the last character before the closing ']', then it is taken as a literal. Thus "[a\-b]", "[-ab]", and "[ab-]" all indicate the same set of three characters, 'a', 'b', and '-'.</p>
<p>Sets may be intersected using the '&amp;' operator or the asymmetric set difference may be taken using the '-' operator, for example, "[[:L:]&amp;[\\u0000-\\u0FFF]]" indicates the set of all Unicode letters with values less than 4096. Operators ('&amp;' and '|') have equal precedence and bind left-to-right. Thus "[[:L:]-[a-z]-[\\u0100-\\u01FF]]" is equivalent to "[[[:L:]-[a-z]]-[\\u0100-\\u01FF]]". This only really matters for difference; intersection is commutative.</p>
<table border="1" cellspacing="3" cellpadding="3">
<tr valign="top">
<td><p><code>[a]</code></p>
</td><td><p>The set containing 'a' </p>
</td></tr>
<tr valign="top">
<td><p><code>[a-z]</code></p>
</td><td><p>The set containing 'a' through 'z' and all letters in between, in Unicode order </p>
</td></tr>
<tr valign="top">
<td><p><code>[^a-z]</code></p>
</td><td><p>The set containing all characters but 'a' through 'z', that is, U+0000 through 'a'-1 and 'z'+1 through U+10FFFF </p>
</td></tr>
<tr valign="top">
<td><p><code>[[<em>pat1</em>][<em>pat2</em>]]</code> </p>
</td><td><p>The union of sets specified by <em>pat1</em> and <em>pat2</em> </p>
</td></tr>
<tr valign="top">
<td><p><code>[[<em>pat1</em>]&amp;[<em>pat2</em>]]</code> </p>
</td><td><p>The intersection of sets specified by <em>pat1</em> and <em>pat2</em> </p>
</td></tr>
<tr valign="top">
<td><p><code>[[<em>pat1</em>]-[<em>pat2</em>]]</code> </p>
</td><td><p>The asymmetric difference of sets specified by <em>pat1</em> and <em>pat2</em> </p>
</td></tr>
<tr valign="top">
<td><p><code>[:Lu:] or \p{Lu}</code> </p>
</td><td><p>The set of characters having the specified Unicode property; in this case, Unicode uppercase letters </p>
</td></tr>
<tr valign="top">
<td><p><code>[:^Lu:] or \P{Lu}</code> </p>
</td><td><p>The set of characters <em>not</em> having the given Unicode property </p>
</td></tr>
</table>
<p><b>Warning</b>: you cannot add an empty string ("") to a <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>.</p>
<p><b>Formal syntax</b></p>
 <blockquote> <table border="1" cellspacing="3" cellpadding="3">
<tr align="top">
<td valign="top" align="right"><p><code>pattern :=&nbsp; </code> </p>
</td><td valign="top"><p><code>('[' '^'? item* ']') | property</code>  </p>
</td></tr>
<tr align="top">
<td valign="top" align="right"><p><code>item :=&nbsp; </code> </p>
</td><td valign="top"><p><code>char | (char '-' char) | pattern-expr<br/>
 </code>  </p>
</td></tr>
<tr align="top">
<td valign="top" align="right"><p><code>pattern-expr :=&nbsp; </code> </p>
</td><td valign="top"><p><code>pattern | pattern-expr pattern | pattern-expr op pattern<br/>
 </code>  </p>
</td></tr>
<tr align="top">
<td valign="top" align="right"><p><code>op :=&nbsp; </code> </p>
</td><td valign="top"><p><code>'&amp;' | '-'<br/>
 </code>  </p>
</td></tr>
<tr align="top">
<td valign="top" align="right"><p><code>special :=&nbsp; </code> </p>
</td><td valign="top"><p><code>'[' | ']' | '-'<br/>
 </code>  </p>
</td></tr>
<tr align="top">
<td valign="top" align="right"><p><code>char :=&nbsp; </code> </p>
</td><td valign="top"><p><em>any character that is not</em><code> special<br/>
 | ('\' </code><em>any character</em><code>)<br/>
 | ('\u' hex hex hex hex)<br/>
 </code>  </p>
</td></tr>
<tr align="top">
<td valign="top" align="right"><p><code>hex :=&nbsp; </code> </p>
</td><td valign="top"><p><em>any character for which </em><code>Character.digit(c, 16)</code><em> returns a non-negative result</em>  </p>
</td></tr>
<tr>
<td valign="top" align="right"><p><code>property :=&nbsp; </code> </p>
</td><td valign="top"><p><em>a Unicode property set pattern</em>  </p>
</td></tr>
</table>
<p><br/>
 </p>
<table border="1" cellspacing="3" cellpadding="3">
<tr>
<td><p>Legend: </p>
<table border="1" cellspacing="3" cellpadding="3">
<tr>
<td valign="top"><p><code>a := b</code> </p>
</td><td width="20" valign="top"><p>&nbsp;  </p>
</td><td valign="top"><p><code>a</code> may be replaced by <code>b</code>   </p>
</td></tr>
<tr>
<td valign="top"><p><code>a?</code> </p>
</td><td valign="top"><p></p>
</td><td valign="top"><p>zero or one instance of <code>a</code><br/>
   </p>
</td></tr>
<tr>
<td valign="top"><p><code>a*</code> </p>
</td><td valign="top"><p></p>
</td><td valign="top"><p>one or more instances of <code>a</code><br/>
   </p>
</td></tr>
<tr>
<td valign="top"><p><code>a | b</code> </p>
</td><td valign="top"><p></p>
</td><td valign="top"><p>either <code>a</code> or <code>b</code><br/>
   </p>
</td></tr>
<tr>
<td valign="top"><p><code>'a'</code> </p>
</td><td valign="top"><p></p>
</td><td valign="top"><p>the literal string between the quotes   </p>
</td></tr>
</table>
</td></tr>
</table>
 </blockquote><p>Note:</p>
<ul>
<li>Most <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> methods do not take a UErrorCode parameter because there are usually very few opportunities for failure other than a shortage of memory, error codes in low-level C++ string methods would be inconvenient, and the error code as the last parameter (ICU convention) would prevent the use of default parameter values. Instead, such methods set the <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> into a "bogus" state (see <a class="el" href="classUnicodeSet.html#ad2987ff72267bd6692c57be0f0e39418" title="Determine if this object contains a valid set.">isBogus()</a>) if an error occurs.</li>
</ul>
<dl class="author"><dt><b>Author:</b></dt><dd>Alan Liu </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001361">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="uniset_8h_source.html#l00272">272</a> of file <a class="el" href="uniset_8h_source.html">uniset.h</a>.</p>
<hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="ad63d2078b9f1085271e23deae9798527"></a><!-- doxytag: member="UnicodeSet::@7" ref="ad63d2078b9f1085271e23deae9798527" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">anonymous enum</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="ad63d2078b9f1085271e23deae9798527a1edea65cb1a0b012dc6fff9ac49e4fa9"></a><!-- doxytag: member="MIN_VALUE" ref="ad63d2078b9f1085271e23deae9798527a1edea65cb1a0b012dc6fff9ac49e4fa9" args="" -->MIN_VALUE</em>&nbsp;</td><td>
<p>Minimum value that can be stored in a <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001442">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="ad63d2078b9f1085271e23deae9798527a2c64b96c719b41e29724b22acaf6859b"></a><!-- doxytag: member="MAX_VALUE" ref="ad63d2078b9f1085271e23deae9798527a2c64b96c719b41e29724b22acaf6859b" args="" -->MAX_VALUE</em>&nbsp;</td><td>
<p>Maximum value that can be stored in a <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001443">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>
</td></tr>
</table>
</dd>
</dl>

<p>Definition at line <a class="el" href="uniset_8h_source.html#l00332">332</a> of file <a class="el" href="uniset_8h_source.html">uniset.h</a>.</p>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a0a9d8b6532d6c43395e4337cc31c0445"></a><!-- doxytag: member="UnicodeSet::UnicodeSet" ref="a0a9d8b6532d6c43395e4337cc31c0445" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UnicodeSet::UnicodeSet </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructs an empty set. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001364">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a8644385f40e8005761184b4b2c2f29cc"></a><!-- doxytag: member="UnicodeSet::UnicodeSet" ref="a8644385f40e8005761184b4b2c2f29cc" args="(UChar32 start, UChar32 end)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UnicodeSet::UnicodeSet </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&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>Constructs a set containing the given range. </p>
<p>If <code>end &gt; start</code> then an empty set is created.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>first character, inclusive, of range </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>last character, inclusive, of range </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001365">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="ae1905a055c32f34619a4355aa6868b6e"></a><!-- doxytag: member="UnicodeSet::UnicodeSet" ref="ae1905a055c32f34619a4355aa6868b6e" args="(const UnicodeString &amp;pattern, UErrorCode &amp;status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UnicodeSet::UnicodeSet </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>pattern</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>Constructs a set from the given pattern. </p>
<p>See the class description for the syntax of the pattern language. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pattern</em>&nbsp;</td><td>a string specifying what characters are in the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>status</em>&nbsp;</td><td>returns <code>U_ILLEGAL_ARGUMENT_ERROR</code> if the pattern contains a syntax error. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001366">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a8f0732d6cb949ac1dd77f9a571dff1be"></a><!-- doxytag: member="UnicodeSet::UnicodeSet" ref="a8f0732d6cb949ac1dd77f9a571dff1be" args="(const UnicodeString &amp;pattern, uint32_t options, const SymbolTable *symbols, UErrorCode &amp;status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UnicodeSet::UnicodeSet </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>options</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classSymbolTable.html">SymbolTable</a> *&nbsp;</td>
          <td class="paramname"> <em>symbols</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>Constructs a set from the given pattern. </p>
<p>See the class description for the syntax of the pattern language. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pattern</em>&nbsp;</td><td>a string specifying what characters are in the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td>bitmask for options to apply to the pattern. Valid options are USET_IGNORE_SPACE and USET_CASE_INSENSITIVE. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>symbols</em>&nbsp;</td><td>a symbol table mapping variable names to values and stand-in characters to UnicodeSets; may be NULL </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>status</em>&nbsp;</td><td>returns <code>U_ILLEGAL_ARGUMENT_ERROR</code> if the pattern contains a syntax error. </td></tr>
  </table>
  </dd>
</dl>
<dl class="internal"><dt><b><a class="el" href="internal.html#_internal000095">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. </dd></dl>

</div>
</div>
<a class="anchor" id="afd5eb61da4a0ea041a933896c458ac99"></a><!-- doxytag: member="UnicodeSet::UnicodeSet" ref="afd5eb61da4a0ea041a933896c458ac99" args="(const UnicodeString &amp;pattern, ParsePosition &amp;pos, uint32_t options, const SymbolTable *symbols, UErrorCode &amp;status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UnicodeSet::UnicodeSet </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classParsePosition.html">ParsePosition</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>pos</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>options</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classSymbolTable.html">SymbolTable</a> *&nbsp;</td>
          <td class="paramname"> <em>symbols</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>Constructs a set from the given pattern. </p>
<p>See the class description for the syntax of the pattern language. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pattern</em>&nbsp;</td><td>a string specifying what characters are in the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>pos</em>&nbsp;</td><td>on input, the position in pattern at which to start parsing. On output, the position after the last character parsed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td>bitmask for options to apply to the pattern. Valid options are USET_IGNORE_SPACE and USET_CASE_INSENSITIVE. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>symbols</em>&nbsp;</td><td>a symbol table mapping variable names to values and stand-in characters to UnicodeSets; may be NULL </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>status</em>&nbsp;</td><td>input-output error code </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001367">Stable:</a></b></dt><dd>ICU 2.8 </dd></dl>

</div>
</div>
<a class="anchor" id="a3d3ae73b57fd6b7609f88177a19034f8"></a><!-- doxytag: member="UnicodeSet::UnicodeSet" ref="a3d3ae73b57fd6b7609f88177a19034f8" args="(const UnicodeSet &amp;o)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UnicodeSet::UnicodeSet </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>o</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructs a set that is identical to the given <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001368">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a32f201258378210ede96ad08f8676c82"></a><!-- doxytag: member="UnicodeSet::~UnicodeSet" ref="a32f201258378210ede96ad08f8676c82" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual UnicodeSet::~UnicodeSet </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Destructs the set. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001369">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a4fb243ad6c13d3f17b3330d1c521d35a"></a><!-- doxytag: member="UnicodeSet::add" ref="a4fb243ad6c13d3f17b3330d1c521d35a" args="(const UnicodeString &amp;s)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::add </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds the specified multicharacter to this set if it is not already present. </p>
<p>If this set already contains the multicharacter, the call leaves this set unchanged. Thus "ch" =&gt; {"ch"} <br/>
<b>Warning: you cannot add an empty string ("") to a <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>.</b> A frozen set will not be modified. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>the source string </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>this object, for chaining </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001412">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="a63c37362765602f4f64e2d8f431eef71"></a><!-- doxytag: member="UnicodeSet::add" ref="a63c37362765602f4f64e2d8f431eef71" args="(UChar32 c)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::add </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>c</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds the specified character to this set if it is not already present. </p>
<p>If this set already contains the specified character, the call leaves this set unchanged. A frozen set will not be modified. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001411">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a1379c186ca8b314c91d20b7d9130fb7e"></a><!-- doxytag: member="UnicodeSet::add" ref="a1379c186ca8b314c91d20b7d9130fb7e" args="(UChar32 start, UChar32 end)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::add </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds the specified range to this set if it is not already present. </p>
<p>If this set already contains the specified range, the call leaves this set unchanged. If <code>end &gt; start</code> then an empty range is added, leaving the set unchanged. This is equivalent to a boolean logic OR, or a set UNION. A frozen set will not be modified.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>first character, inclusive, of range to be added to this set. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>last character, inclusive, of range to be added to this set. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001410">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a6ee40747f030a8e24a5984425e334afc"></a><!-- doxytag: member="UnicodeSet::addAll" ref="a6ee40747f030a8e24a5984425e334afc" args="(const UnicodeSet &amp;c)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::addAll </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>c</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds all of the elements in the specified set to this set if they're not already present. </p>
<p>This operation effectively modifies this set so that its value is the <em>union</em> of the two sets. The behavior of this operation is unspecified if the specified collection is modified while the operation is in progress. A frozen set will not be modified.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>set whose elements are to be added to this set. </td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeSet.html#a1379c186ca8b314c91d20b7d9130fb7e" title="Adds the specified range to this set if it is not already present.">add(UChar32, UChar32)</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001428">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="ac5d166441f38ae9e4c4e1737b92175bd"></a><!-- doxytag: member="UnicodeSet::addAll" ref="ac5d166441f38ae9e4c4e1737b92175bd" args="(const UnicodeString &amp;s)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::addAll </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds each of the characters in this string to the set. </p>
<p>Thus "ch" =&gt; {"c", "h"} If this set already any particular character, it has no effect on that character. A frozen set will not be modified. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>the source string </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>this object, for chaining </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001413">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="ae2147b573bc056ea80cfe5365f6cab33"></a><!-- doxytag: member="UnicodeSet::addMatchSetTo" ref="ae2147b573bc056ea80cfe5365f6cab33" args="(UnicodeSet &amp;toUnionTo) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void UnicodeSet::addMatchSetTo </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>toUnionTo</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Implementation of <a class="el" href="classUnicodeMatcher.html" title="UnicodeMatcher defines a protocol for objects that can match a range of characters...">UnicodeMatcher</a> API. </p>
<p>Union the set of all characters that may be matched by this object into the given set. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>toUnionTo</em>&nbsp;</td><td>the set into which to union the source characters </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001407">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="a642c4823b72d7fa64ebcda577a9cef8b"></a><!-- doxytag: member="UnicodeSet::applyIntPropertyValue" ref="a642c4823b72d7fa64ebcda577a9cef8b" args="(UProperty prop, int32_t value, UErrorCode &amp;ec)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::applyIntPropertyValue </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uchar_8h.html#ae40d616419e74ecc7c80a9febab03199">UProperty</a>&nbsp;</td>
          <td class="paramname"> <em>prop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>value</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>ec</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Modifies this set to contain those code points which have the given value for the given binary or enumerated property, as returned by u_getIntPropertyValue. </p>
<p>Prior contents of this set are lost. A frozen set will not be modified.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>prop</em>&nbsp;</td><td>a property in the range UCHAR_BIN_START..UCHAR_BIN_LIMIT-1 or UCHAR_INT_START..UCHAR_INT_LIMIT-1 or UCHAR_MASK_START..UCHAR_MASK_LIMIT-1.</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>a value in the range u_getIntPropertyMinValue(prop).. u_getIntPropertyMaxValue(prop), with one exception. If prop is UCHAR_GENERAL_CATEGORY_MASK, then value should not be a UCharCategory, but rather a mask value produced by <a class="el" href="uchar_8h.html#a6def30b7d6d22c7de63c2a80596ee847" title="Get a single-bit bit set for the general category of a character.">U_GET_GC_MASK()</a>. This allows grouped categories such as [:L:] to be represented.</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ec</em>&nbsp;</td><td>error code input/output parameter</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a reference to this set</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001387">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="aca25277cd3feb80e72be77f6e169c50a"></a><!-- doxytag: member="UnicodeSet::applyPattern" ref="aca25277cd3feb80e72be77f6e169c50a" args="(const UnicodeString &amp;pattern, ParsePosition &amp;pos, uint32_t options, const SymbolTable *symbols, UErrorCode &amp;status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::applyPattern </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classParsePosition.html">ParsePosition</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>pos</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>options</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classSymbolTable.html">SymbolTable</a> *&nbsp;</td>
          <td class="paramname"> <em>symbols</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>Parses the given pattern, starting at the given position. </p>
<p>The character at pattern.charAt(pos.getIndex()) must be '[', or the parse fails. Parsing continues until the corresponding closing ']'. If a syntax error is encountered between the opening and closing brace, the parse fails. Upon return from a successful parse, the <a class="el" href="classParsePosition.html" title="ParsePosition is a simple class used by Format and its subclasses to keep track of...">ParsePosition</a> is updated to point to the character following the closing ']', and a StringBuffer containing a pairs list for the parsed pattern is returned. This method calls itself recursively to parse embedded subpatterns. <em> Empties the set passed before applying the pattern.</em> A frozen set will not be modified.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pattern</em>&nbsp;</td><td>the string containing the pattern to be parsed. The portion of the string from pos.getIndex(), which must be a '[', to the corresponding closing ']', is parsed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>pos</em>&nbsp;</td><td>upon entry, the position at which to being parsing. The character at pattern.charAt(pos.getIndex()) must be a '['. Upon return from a successful parse, pos.getIndex() is either the character after the closing ']' of the parsed pattern, or pattern.length() if the closing ']' is the last character of the pattern string. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td>bitmask for options to apply to the pattern. Valid options are USET_IGNORE_SPACE and USET_CASE_INSENSITIVE. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>symbols</em>&nbsp;</td><td>a symbol table mapping variable names to values and stand-ins to UnicodeSets; may be NULL </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>status</em>&nbsp;</td><td>returns <code>U_ILLEGAL_ARGUMENT_ERROR</code> if the pattern contains a syntax error. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a reference to this </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001385">Stable:</a></b></dt><dd>ICU 2.8 </dd></dl>

</div>
</div>
<a class="anchor" id="a33aaa692e8d76a9544adb15576a76120"></a><!-- doxytag: member="UnicodeSet::applyPattern" ref="a33aaa692e8d76a9544adb15576a76120" args="(const UnicodeString &amp;pattern, uint32_t options, const SymbolTable *symbols, UErrorCode &amp;status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::applyPattern </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>options</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classSymbolTable.html">SymbolTable</a> *&nbsp;</td>
          <td class="paramname"> <em>symbols</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>Modifies this set to represent the set specified by the given pattern, optionally ignoring white space. </p>
<p>See the class description for the syntax of the pattern language. A frozen set will not be modified. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pattern</em>&nbsp;</td><td>a string specifying what characters are in the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td>bitmask for options to apply to the pattern. Valid options are USET_IGNORE_SPACE and USET_CASE_INSENSITIVE. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>symbols</em>&nbsp;</td><td>a symbol table mapping variable names to values and stand-ins to UnicodeSets; may be NULL </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>status</em>&nbsp;</td><td>returns <code>U_ILLEGAL_ARGUMENT_ERROR</code> if the pattern contains a syntax error. <em> Empties the set passed before applying the pattern.</em> </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a reference to this </dd></dl>
<dl class="internal"><dt><b><a class="el" href="internal.html#_internal000096">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. </dd></dl>

</div>
</div>
<a class="anchor" id="a92ea00fbad175397371e02f0a4a7f6cc"></a><!-- doxytag: member="UnicodeSet::applyPattern" ref="a92ea00fbad175397371e02f0a4a7f6cc" args="(const UnicodeString &amp;pattern, UErrorCode &amp;status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::applyPattern </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>pattern</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>Modifies this set to represent the set specified by the given pattern, optionally ignoring white space. </p>
<p>See the class description for the syntax of the pattern language. A frozen set will not be modified. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pattern</em>&nbsp;</td><td>a string specifying what characters are in the set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>status</em>&nbsp;</td><td>returns <code>U_ILLEGAL_ARGUMENT_ERROR</code> if the pattern contains a syntax error. <em> Empties the set passed before applying the pattern.</em> </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a reference to this </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001384">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a9f355f0695c6fc079328ec14b3131d62"></a><!-- doxytag: member="UnicodeSet::applyPropertyAlias" ref="a9f355f0695c6fc079328ec14b3131d62" args="(const UnicodeString &amp;prop, const UnicodeString &amp;value, UErrorCode &amp;ec)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::applyPropertyAlias </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>prop</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>value</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>ec</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Modifies this set to contain those code points which have the given value for the given property. </p>
<p>Prior contents of this set are lost. A frozen set will not be modified.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>prop</em>&nbsp;</td><td>a property alias, either short or long. The name is matched loosely. See PropertyAliases.txt for names and a description of loose matching. If the value string is empty, then this string is interpreted as either a General_Category value alias, a Script value alias, a binary property alias, or a special ID. Special IDs are matched loosely and correspond to the following sets:</td></tr>
  </table>
  </dd>
</dl>
<p>"ANY" = [\u0000-\U0010FFFF], "ASCII" = [\u0000-\u007F], "Assigned" = [:^Cn:].</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>a value alias, either short or long. The name is matched loosely. See PropertyValueAliases.txt for names and a description of loose matching. In addition to aliases listed, numeric values and canonical combining classes may be expressed numerically, e.g., ("nv", "0.5") or ("ccc", "220"). The value string may also be empty.</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ec</em>&nbsp;</td><td>error code input/output parameter</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a reference to this set</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001388">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="abdc0d3f52ce17855ca1a6eeed7ff19e2"></a><!-- doxytag: member="UnicodeSet::charAt" ref="abdc0d3f52ce17855ca1a6eeed7ff19e2" args="(int32_t index) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> UnicodeSet::charAt </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>index</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the character at the given index within this set, where the set is ordered by ascending code point. </p>
<p>If the index is out of range, return (UChar32)-1. The inverse of this method is <code><a class="el" href="classUnicodeSet.html#a379296bbc66c5c67d1c92d44ae866504" title="Returns the index of the given character within this set, where the set is ordered...">indexOf()</a></code>. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>index</em>&nbsp;</td><td>an index from 0..<a class="el" href="classUnicodeSet.html#a6c3a6816ee9b470937073fec4d62f4f0" title="Returns the number of elements in this set (its cardinality).">size()</a>-1 </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the character at the given index, or (UChar32)-1. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001409">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="aaa81304748c9f5bd62eff400c14a9d0f"></a><!-- doxytag: member="UnicodeSet::clear" ref="aaa81304748c9f5bd62eff400c14a9d0f" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::clear </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Removes all of the elements from this set. </p>
<p>This set will be empty after this call returns. A frozen set will not be modified. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001432">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a4a85692219bd42074445974f10ca9b9e"></a><!-- doxytag: member="UnicodeSet::clone" ref="a4a85692219bd42074445974f10ca9b9e" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classUnicodeFunctor.html">UnicodeFunctor</a>* UnicodeSet::clone </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns a copy of this object. </p>
<p>All <a class="el" href="classUnicodeFunctor.html" title="UnicodeFunctor is an abstract base class for objects that perform match and/or replace...">UnicodeFunctor</a> objects have to support cloning in order to allow classes using UnicodeFunctors, such as <a class="el" href="classTransliterator.html" title="Transliterator is an abstract class that transliterates text from one format to another...">Transliterator</a>, to implement cloning. If this set is frozen, then the clone will be frozen as well. Use <a class="el" href="classUnicodeSet.html#a7099ee368fd521aab75b44d5150b6449" title="Clone the set and make the clone mutable.">cloneAsThawed()</a> for a mutable clone of a frozen set. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeSet.html#a7099ee368fd521aab75b44d5150b6449" title="Clone the set and make the clone mutable.">cloneAsThawed</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001373">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Implements <a class="el" href="classUnicodeFunctor.html#ae9aaff845a9885df3ec336df1b4afa10">UnicodeFunctor</a>.</p>

</div>
</div>
<a class="anchor" id="a7099ee368fd521aab75b44d5150b6449"></a><!-- doxytag: member="UnicodeSet::cloneAsThawed" ref="a7099ee368fd521aab75b44d5150b6449" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeFunctor.html">UnicodeFunctor</a>* UnicodeSet::cloneAsThawed </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Clone the set and make the clone mutable. </p>
<p>See the ICU4J Freezable interface for details. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the mutable clone </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeSet.html#a31085c50d5cb8fdc634ea01156f4f907" title="Freeze the set (make it immutable).">freeze</a> </dd>
<dd>
<a class="el" href="classUnicodeSet.html#af82d9e6251a46c6b4735af8b7cf1f3f3" title="Determines whether the set has been frozen (made immutable) or not.">isFrozen</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001381">Stable:</a></b></dt><dd>ICU 3.8 </dd></dl>

</div>
</div>
<a class="anchor" id="a18bd83e5ae05494b4bbdc8030baa797d"></a><!-- doxytag: member="UnicodeSet::closeOver" ref="a18bd83e5ae05494b4bbdc8030baa797d" args="(int32_t attribute)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::closeOver </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>attribute</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Close this set over the given attribute. </p>
<p>For the attribute USET_CASE, the result is to modify this set so that:</p>
<p>1. For each character or string 'a' in this set, all strings or characters 'b' such that foldCase(a) == foldCase(b) are added to this set.</p>
<p>2. For each string 'e' in the resulting set, if e != foldCase(e), 'e' will be removed.</p>
<p>Example: [aq\u00DF{Bc}{bC}{Fi}] =&gt; [aAqQ\u00DF\uFB01{ss}{bc}{fi}]</p>
<p>(Here foldCase(x) refers to the operation u_strFoldCase, and a == b denotes that the contents are the same, not pointer comparison.)</p>
<p>A frozen set will not be modified.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>attribute</em>&nbsp;</td><td>bitmask for attributes to close over. Currently only the USET_CASE bit is supported. Any undefined bits are ignored. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a reference to this set. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001433">Stable:</a></b></dt><dd>ICU 4.2 </dd></dl>

</div>
</div>
<a class="anchor" id="ab50b1b38c127430e876ea6830f278bc7"></a><!-- doxytag: member="UnicodeSet::compact" ref="ab50b1b38c127430e876ea6830f278bc7" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::compact </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reallocate this objects internal structures to take up the least possible space, without changing this object's value. </p>
<p>A frozen set will not be modified. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001439">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="abd4843e788831beb8960ae0117d3d8ac"></a><!-- doxytag: member="UnicodeSet::complement" ref="abd4843e788831beb8960ae0117d3d8ac" args="(const UnicodeString &amp;s)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::complement </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Complement the specified string in this set. </p>
<p>The set will not contain the specified string once the call returns. <br/>
<b>Warning: you cannot add an empty string ("") to a <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>.</b> A frozen set will not be modified. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>the string to complement </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>this object, for chaining </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001427">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="a6a18946f8b62ba998080cc2b82ae03f3"></a><!-- doxytag: member="UnicodeSet::complement" ref="a6a18946f8b62ba998080cc2b82ae03f3" args="(UChar32 c)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::complement </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>c</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Complements the specified character in this set. </p>
<p>The character will be removed if it is in this set, or will be added if it is not in this set. A frozen set will not be modified. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001426">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="aba56631dbe1a84f42eb2c67711cee978"></a><!-- doxytag: member="UnicodeSet::complement" ref="aba56631dbe1a84f42eb2c67711cee978" args="(UChar32 start, UChar32 end)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::complement </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Complements the specified range in this set. </p>
<p>Any character in the range will be removed if it is in this set, or will be added if it is not in this set. If <code>end &gt; start</code> then an empty range is complemented, leaving the set unchanged. This is equivalent to a boolean logic XOR. A frozen set will not be modified.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>first character, inclusive, of range to be removed from this set. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>last character, inclusive, of range to be removed from this set. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001425">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a610f31a87d953d87820b19c2e30dc14f"></a><!-- doxytag: member="UnicodeSet::complement" ref="a610f31a87d953d87820b19c2e30dc14f" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::complement </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Inverts this set. </p>
<p>This operation modifies this set so that its value is its complement. This is equivalent to <code>complement(MIN_VALUE, MAX_VALUE)</code>. A frozen set will not be modified. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001424">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a3e128521c00a9cf6b4c94558b87cebd2"></a><!-- doxytag: member="UnicodeSet::complementAll" ref="a3e128521c00a9cf6b4c94558b87cebd2" args="(const UnicodeSet &amp;c)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::complementAll </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>c</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Complements in this set all elements contained in the specified set. </p>
<p>Any character in the other set will be removed if it is in this set, or will be added if it is not in this set. A frozen set will not be modified.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>set that defines which elements will be xor'ed from this set. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001431">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="a0365c770541d2c7928f3261b9be0bd0f"></a><!-- doxytag: member="UnicodeSet::complementAll" ref="a0365c770541d2c7928f3261b9be0bd0f" args="(const UnicodeString &amp;s)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::complementAll </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Complement EACH of the characters in this string. </p>
<p>Note: "ch" == {"c", "h"} If this set already any particular character, it has no effect on that character. A frozen set will not be modified. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>the source string </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>this object, for chaining </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001415">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="a8d4091fe951ad4cbb3d557e37cf9cba5"></a><!-- doxytag: member="UnicodeSet::contains" ref="a8d4091fe951ad4cbb3d557e37cf9cba5" args="(const UnicodeString &amp;s) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::contains </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns <code>true</code> if this set contains the given multicharacter 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>s</em>&nbsp;</td><td>string to be checked for containment </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><code>true</code> if this set contains the specified string </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001393">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="ad3e92e0b5c8c673462a589791d57cc84"></a><!-- doxytag: member="UnicodeSet::contains" ref="ad3e92e0b5c8c673462a589791d57cc84" args="(UChar32 start, UChar32 end) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::contains </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if this set contains every character of the given range. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>first character, inclusive, of the range </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>last character, inclusive, of the range </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the test condition is met </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001392">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a5f83cbdf884770344420fb60e4f8e697"></a><!-- doxytag: member="UnicodeSet::contains" ref="a5f83cbdf884770344420fb60e4f8e697" args="(UChar32 c) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::contains </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>c</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if this set contains the given character. </p>
<p>This function works faster with a frozen set. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>character to be checked for containment </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the test condition is met </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001391">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Implements <a class="el" href="classUnicodeFilter.html#aa3b2c85ffa0cff083009efb324de84ca">UnicodeFilter</a>.</p>

</div>
</div>
<a class="anchor" id="a224be3bc42df5b8a47c21b33c9ad7dc6"></a><!-- doxytag: member="UnicodeSet::containsAll" ref="a224be3bc42df5b8a47c21b33c9ad7dc6" args="(const UnicodeString &amp;s) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::containsAll </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if this set contains all the characters of the given 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>s</em>&nbsp;</td><td>string containing characters to be checked for containment </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the test condition is met </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001395">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="a3823eb4598b4fbdf33c5671d447914db"></a><!-- doxytag: member="UnicodeSet::containsAll" ref="a3823eb4598b4fbdf33c5671d447914db" args="(const UnicodeSet &amp;c) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::containsAll </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>c</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if this set contains all the characters and strings of the given set. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>set to be checked for containment </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the test condition is met </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001394">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="a913f8afd4394c0786207a824c359291d"></a><!-- doxytag: member="UnicodeSet::containsNone" ref="a913f8afd4394c0786207a824c359291d" args="(const UnicodeString &amp;s) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::containsNone </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if this set contains none of the characters of the given 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>s</em>&nbsp;</td><td>string containing characters to be checked for containment </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the test condition is met </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001398">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="aac49b81bc2081b71d3844053ef4a00e1"></a><!-- doxytag: member="UnicodeSet::containsNone" ref="aac49b81bc2081b71d3844053ef4a00e1" args="(const UnicodeSet &amp;c) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::containsNone </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>c</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if this set contains none of the characters and strings of the given set. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>set to be checked for containment </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the test condition is met </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001397">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="aa033cd3776450f747f5bf8beb0477c0e"></a><!-- doxytag: member="UnicodeSet::containsNone" ref="aa033cd3776450f747f5bf8beb0477c0e" args="(UChar32 start, UChar32 end) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::containsNone </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if this set contains none of the characters of the given range. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>first character, inclusive, of the range </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>last character, inclusive, of the range </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the test condition is met </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001396">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

<p>Referenced by <a class="el" href="uniset_8h_source.html#l01619">containsSome()</a>.</p>

</div>
</div>
<a class="anchor" id="ac30cbb03cc4b55cad432f838967324b3"></a><!-- doxytag: member="UnicodeSet::containsSome" ref="ac30cbb03cc4b55cad432f838967324b3" args="(const UnicodeString &amp;s) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::containsSome </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if this set contains one or more of the characters of the given 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>s</em>&nbsp;</td><td>string containing characters to be checked for containment </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the condition is met </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001401">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

<p>Definition at line <a class="el" href="uniset_8h_source.html#l01627">1627</a> of file <a class="el" href="uniset_8h_source.html">uniset.h</a>.</p>

<p>References <a class="el" href="classUnicodeSet.html#aa033cd3776450f747f5bf8beb0477c0e">containsNone()</a>.</p>

</div>
</div>
<a class="anchor" id="a35ddc714c95fffa7650a10abb75be5d8"></a><!-- doxytag: member="UnicodeSet::containsSome" ref="a35ddc714c95fffa7650a10abb75be5d8" args="(const UnicodeSet &amp;s) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::containsSome </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if this set contains one or more of the characters and strings of the given set. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>The set to be checked for containment </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the condition is met </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001400">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

<p>Definition at line <a class="el" href="uniset_8h_source.html#l01623">1623</a> of file <a class="el" href="uniset_8h_source.html">uniset.h</a>.</p>

<p>References <a class="el" href="classUnicodeSet.html#aa033cd3776450f747f5bf8beb0477c0e">containsNone()</a>.</p>

</div>
</div>
<a class="anchor" id="a5317db95daf21213341b6d8204dcb42c"></a><!-- doxytag: member="UnicodeSet::containsSome" ref="a5317db95daf21213341b6d8204dcb42c" args="(UChar32 start, UChar32 end) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::containsSome </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if this set contains one or more of the characters in the given range. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>first character, inclusive, of the range </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>last character, inclusive, of the range </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the condition is met </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001399">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

<p>Definition at line <a class="el" href="uniset_8h_source.html#l01619">1619</a> of file <a class="el" href="uniset_8h_source.html">uniset.h</a>.</p>

<p>References <a class="el" href="classUnicodeSet.html#aa033cd3776450f747f5bf8beb0477c0e">containsNone()</a>.</p>

</div>
</div>
<a class="anchor" id="abcf0c42078b37520dc05664e5c514ee6"></a><!-- doxytag: member="UnicodeSet::createFrom" ref="abcf0c42078b37520dc05664e5c514ee6" args="(const UnicodeString &amp;s)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="classUnicodeSet.html">UnicodeSet</a>* UnicodeSet::createFrom </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Makes a set from a multicharacter string. </p>
<p>Thus "ch" =&gt; {"ch"} <br/>
<b>Warning: you cannot add an empty string ("") to a <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>.</b> </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>the source string </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a newly created set containing the given string. The caller owns the return object and is responsible for deleting it. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001417">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="a7ee55510aa41e114d559e65fc5d94a37"></a><!-- doxytag: member="UnicodeSet::createFromAll" ref="a7ee55510aa41e114d559e65fc5d94a37" args="(const UnicodeString &amp;s)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="classUnicodeSet.html">UnicodeSet</a>* UnicodeSet::createFromAll </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Makes a set from each of the characters in the string. </p>
<p>Thus "ch" =&gt; {"c", "h"} </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>the source string </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a newly created set containing the given characters The caller owns the return object and is responsible for deleting it. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001418">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="a31085c50d5cb8fdc634ea01156f4f907"></a><!-- doxytag: member="UnicodeSet::freeze" ref="a31085c50d5cb8fdc634ea01156f4f907" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeFunctor.html">UnicodeFunctor</a>* UnicodeSet::freeze </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Freeze the set (make it immutable). </p>
<p>Once frozen, it cannot be unfrozen and is therefore thread-safe until it is deleted. See the ICU4J Freezable interface for details. Freezing the set may also make some operations faster, for example <a class="el" href="classUnicodeSet.html#a5f83cbdf884770344420fb60e4f8e697" title="Returns true if this set contains the given character.">contains()</a> and <a class="el" href="classUnicodeSet.html#ae429f2e852471745b94d6dba3dc38440" title="Returns the length of the initial substring of the input string which consists only...">span()</a>. A frozen set will not be modified. (It remains frozen.) </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>this set. </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeSet.html#af82d9e6251a46c6b4735af8b7cf1f3f3" title="Determines whether the set has been frozen (made immutable) or not.">isFrozen</a> </dd>
<dd>
<a class="el" href="classUnicodeSet.html#a7099ee368fd521aab75b44d5150b6449" title="Clone the set and make the clone mutable.">cloneAsThawed</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001380">Stable:</a></b></dt><dd>ICU 3.8 </dd></dl>

</div>
</div>
<a class="anchor" id="a9d1c1b063e274755de9acb28ed387df5"></a><!-- doxytag: member="UnicodeSet::fromUSet" ref="a9d1c1b063e274755de9acb28ed387df5" args="(const USet *uset)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> * UnicodeSet::fromUSet </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>uset</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get a <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> pointer from a const USet. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>uset</em>&nbsp;</td><td>a const USet (the ICU plain C type for <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the corresponding <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> pointer.</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001376">Stable:</a></b></dt><dd>ICU 4.2 </dd></dl>

<p>Definition at line <a class="el" href="uniset_8h_source.html#l01639">1639</a> of file <a class="el" href="uniset_8h_source.html">uniset.h</a>.</p>

</div>
</div>
<a class="anchor" id="a049d965a1c1f1f8fb1ce15c6b5586c4d"></a><!-- doxytag: member="UnicodeSet::fromUSet" ref="a049d965a1c1f1f8fb1ce15c6b5586c4d" args="(USet *uset)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a> * UnicodeSet::fromUSet </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *&nbsp;</td>
          <td class="paramname"> <em>uset</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get a <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> pointer from a USet. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>uset</em>&nbsp;</td><td>a USet (the ICU plain C type for <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the corresponding <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> pointer.</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001375">Stable:</a></b></dt><dd>ICU 4.2 </dd></dl>

<p>Definition at line <a class="el" href="uniset_8h_source.html#l01635">1635</a> of file <a class="el" href="uniset_8h_source.html">uniset.h</a>.</p>

</div>
</div>
<a class="anchor" id="a4e6c600a7a6bcc1d564d84d0fa512932"></a><!-- doxytag: member="UnicodeSet::getDynamicClassID" ref="a4e6c600a7a6bcc1d564d84d0fa512932" args="(void) 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> UnicodeSet::getDynamicClassID </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Implement <a class="el" href="classUnicodeFunctor.html" title="UnicodeFunctor is an abstract base class for objects that perform match and/or replace...">UnicodeFunctor</a> API. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>The class ID for this object. All objects of a given class have the same class ID. Objects of other classes have different class IDs. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001441">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

<p>Implements <a class="el" href="classUnicodeFilter.html#ac4dc39e50294690b9dd2de60461970f3">UnicodeFilter</a>.</p>

</div>
</div>
<a class="anchor" id="a60901508da179b56dfa8d16204f4c1f0"></a><!-- doxytag: member="UnicodeSet::getRangeCount" ref="a60901508da179b56dfa8d16204f4c1f0" args="(void) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int32_t UnicodeSet::getRangeCount </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Iteration method that returns the number of ranges contained in this set. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeSet.html#a78847265b21d16ec663832bdf6cca8a8" title="Iteration method that returns the first character in the specified range of this...">getRangeStart</a> </dd>
<dd>
<a class="el" href="classUnicodeSet.html#ac03307b5f0118a421cd8dab47f12d780" title="Iteration method that returns the last character in the specified range of this set...">getRangeEnd</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001435">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="ac03307b5f0118a421cd8dab47f12d780"></a><!-- doxytag: member="UnicodeSet::getRangeEnd" ref="ac03307b5f0118a421cd8dab47f12d780" args="(int32_t index) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> UnicodeSet::getRangeEnd </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>index</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Iteration method that returns the last character in the specified range of this set. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeSet.html#a78847265b21d16ec663832bdf6cca8a8" title="Iteration method that returns the first character in the specified range of this...">getRangeStart</a> </dd>
<dd>
<a class="el" href="classUnicodeSet.html#ac03307b5f0118a421cd8dab47f12d780" title="Iteration method that returns the last character in the specified range of this set...">getRangeEnd</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001437">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="a78847265b21d16ec663832bdf6cca8a8"></a><!-- doxytag: member="UnicodeSet::getRangeStart" ref="a78847265b21d16ec663832bdf6cca8a8" args="(int32_t index) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> UnicodeSet::getRangeStart </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>index</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Iteration method that returns the first character in the specified range of this set. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeSet.html#a60901508da179b56dfa8d16204f4c1f0" title="Iteration method that returns the number of ranges contained in this set.">getRangeCount</a> </dd>
<dd>
<a class="el" href="classUnicodeSet.html#ac03307b5f0118a421cd8dab47f12d780" title="Iteration method that returns the last character in the specified range of this set...">getRangeEnd</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001436">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

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

<p>Return the class ID for this class. </p>
<p>This is useful only for comparing to a return value from <a class="el" href="classUnicodeSet.html#a4e6c600a7a6bcc1d564d84d0fa512932" title="Implement UnicodeFunctor API.">getDynamicClassID()</a>. For example: </p>
<pre>
 .      Base* polymorphic_pointer = createPolymorphicObject();
 .      if (polymorphic_pointer-&gt;<a class="el" href="classUnicodeSet.html#a4e6c600a7a6bcc1d564d84d0fa512932" title="Implement UnicodeFunctor API.">getDynamicClassID()</a> ==
 .          Derived::getStaticClassID()) ...
 </pre> <dl class="return"><dt><b>Returns:</b></dt><dd>The class ID for all objects of this class. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001440">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Reimplemented from <a class="el" href="classUnicodeFilter.html#a32a5fef7c44d68ebed5313e27645b5e6">UnicodeFilter</a>.</p>

</div>
</div>
<a class="anchor" id="a530feed82c20c22bfa48e6130fccb139"></a><!-- doxytag: member="UnicodeSet::hashCode" ref="a530feed82c20c22bfa48e6130fccb139" args="(void) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int32_t UnicodeSet::hashCode </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the hash code value for this set. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the hash code value for this set. </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd>Object::hashCode() </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001374">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a379296bbc66c5c67d1c92d44ae866504"></a><!-- doxytag: member="UnicodeSet::indexOf" ref="a379296bbc66c5c67d1c92d44ae866504" args="(UChar32 c) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeSet::indexOf </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>c</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the index of the given character within this set, where the set is ordered by ascending code point. </p>
<p>If the character is not in this set, return -1. The inverse of this method is <code><a class="el" href="classUnicodeSet.html#abdc0d3f52ce17855ca1a6eeed7ff19e2" title="Returns the character at the given index within this set, where the set is ordered...">charAt()</a></code>. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>an index from 0..<a class="el" href="classUnicodeSet.html#a6c3a6816ee9b470937073fec4d62f4f0" title="Returns the number of elements in this set (its cardinality).">size()</a>-1, or -1 </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001408">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="ad2987ff72267bd6692c57be0f0e39418"></a><!-- doxytag: member="UnicodeSet::isBogus" ref="ad2987ff72267bd6692c57be0f0e39418" args="(void) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::isBogus </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Determine if this object contains a valid set. </p>
<p>A bogus set has no value. It is different from an empty set. It can be used to indicate that no set value is available.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if the set is valid, FALSE otherwise </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeSet.html#a3ade624e4b056cb62cc92ed1d945425a" title="Make this UnicodeSet object invalid.">setToBogus()</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001362">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl>

<p>Definition at line <a class="el" href="uniset_8h_source.html#l01631">1631</a> of file <a class="el" href="uniset_8h_source.html">uniset.h</a>.</p>

</div>
</div>
<a class="anchor" id="a0e085f3f2b9a81dd88609e13edd5d8a5"></a><!-- doxytag: member="UnicodeSet::isEmpty" ref="a0e085f3f2b9a81dd88609e13edd5d8a5" args="(void) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::isEmpty </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns <code>true</code> if this set contains no elements. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd><code>true</code> if this set contains no elements. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001390">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="af82d9e6251a46c6b4735af8b7cf1f3f3"></a><!-- doxytag: member="UnicodeSet::isFrozen" ref="af82d9e6251a46c6b4735af8b7cf1f3f3" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::isFrozen </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Determines whether the set has been frozen (made immutable) or not. </p>
<p>See the ICU4J Freezable interface for details. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE/FALSE for whether the set has been frozen </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeSet.html#a31085c50d5cb8fdc634ea01156f4f907" title="Freeze the set (make it immutable).">freeze</a> </dd>
<dd>
<a class="el" href="classUnicodeSet.html#a7099ee368fd521aab75b44d5150b6449" title="Clone the set and make the clone mutable.">cloneAsThawed</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001379">Stable:</a></b></dt><dd>ICU 3.8 </dd></dl>

<p>Definition at line <a class="el" href="uniset_8h_source.html#l01615">1615</a> of file <a class="el" href="uniset_8h_source.html">uniset.h</a>.</p>

<p>References <a class="el" href="utypes_8h_source.html#l00292">NULL</a>.</p>

</div>
</div>
<a class="anchor" id="a3acd6cd4268004b9f3740a2373f411c4"></a><!-- doxytag: member="UnicodeSet::matches" ref="a3acd6cd4268004b9f3740a2373f411c4" args="(const Replaceable &amp;text, int32_t &amp;offset, int32_t limit, UBool incremental)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="unimatch_8h.html#aa87e5322490b3e89e6913bfabd0390e6">UMatchDegree</a> UnicodeSet::matches </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classReplaceable.html">Replaceable</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>text</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t &amp;&nbsp;</td>
          <td class="paramname"> <em>offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>limit</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td>
          <td class="paramname"> <em>incremental</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Implement <a class="el" href="classUnicodeMatcher.html#ab712e496c0023237fbe38184d0424310" title="Return a UMatchDegree value indicating the degree of match for the given text at...">UnicodeMatcher::matches()</a>. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001406">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

<p>Reimplemented from <a class="el" href="classUnicodeFilter.html#aea7e423b6ea7e4588bf7f5aa220e665c">UnicodeFilter</a>.</p>

</div>
</div>
<a class="anchor" id="a003c9c3c25134385dcc980be40848e6c"></a><!-- doxytag: member="UnicodeSet::operator!=" ref="a003c9c3c25134385dcc980be40848e6c" args="(const UnicodeSet &amp;o) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::operator!= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>o</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compares the specified object with this set for equality. </p>
<p>Returns <code>true</code> if the specified set is not equal to this set. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001372">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="uniset_8h_source.html#l01611">1611</a> of file <a class="el" href="uniset_8h_source.html">uniset.h</a>.</p>

<p>References <a class="el" href="classUnicodeSet.html#a4c6b2c9216b9e42f4d69ed413aaa2af4">operator==()</a>.</p>

</div>
</div>
<a class="anchor" id="a2d1faed072a21c52054507d024d7700d"></a><!-- doxytag: member="UnicodeSet::operator=" ref="a2d1faed072a21c52054507d024d7700d" args="(const UnicodeSet &amp;o)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>o</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assigns this object to be a copy of another. </p>
<p>A frozen set will not be modified. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001370">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a4c6b2c9216b9e42f4d69ed413aaa2af4"></a><!-- doxytag: member="UnicodeSet::operator==" ref="a4c6b2c9216b9e42f4d69ed413aaa2af4" args="(const UnicodeSet &amp;o) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::operator== </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>o</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compares the specified object with this set for equality. </p>
<p>Returns <code>true</code> if the two sets have the same size, and every member of the specified set is contained in this set (or equivalently, every member of this set is contained in the specified set).</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>o</em>&nbsp;</td><td>set to be compared for equality with this set. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><code>true</code> if the specified set is equal to this set. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001371">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Referenced by <a class="el" href="uniset_8h_source.html#l01611">operator!=()</a>.</p>

</div>
</div>
<a class="anchor" id="a4f2bddd13e9df82977954cb5cd3ffc22"></a><!-- doxytag: member="UnicodeSet::remove" ref="a4f2bddd13e9df82977954cb5cd3ffc22" args="(const UnicodeString &amp;s)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::remove </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Removes the specified string from this set if it is present. </p>
<p>The set will not contain the specified character once the call returns. A frozen set will not be modified. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>the source string </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>this object, for chaining </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001423">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="a3bb2e0286c5e092091f5d49bf7d9663c"></a><!-- doxytag: member="UnicodeSet::remove" ref="a3bb2e0286c5e092091f5d49bf7d9663c" args="(UChar32 c)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::remove </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>c</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Removes the specified character from this set if it is present. </p>
<p>The set will not contain the specified range once the call returns. A frozen set will not be modified. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001422">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="acc97ad34863f7b856851d38636d58f2a"></a><!-- doxytag: member="UnicodeSet::remove" ref="acc97ad34863f7b856851d38636d58f2a" args="(UChar32 start, UChar32 end)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::remove </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Removes the specified range from this set if it is present. </p>
<p>The set will not contain the specified range once the call returns. If <code>end &gt; start</code> then an empty range is removed, leaving the set unchanged. A frozen set will not be modified.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>first character, inclusive, of range to be removed from this set. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>last character, inclusive, of range to be removed from this set. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001421">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a02e3e29b1412956ccebff4919c48ba4c"></a><!-- doxytag: member="UnicodeSet::removeAll" ref="a02e3e29b1412956ccebff4919c48ba4c" args="(const UnicodeSet &amp;c)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::removeAll </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>c</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Removes from this set all of its elements that are contained in the specified set. </p>
<p>This operation effectively modifies this set so that its value is the <em>asymmetric set difference</em> of the two sets. A frozen set will not be modified.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>set that defines which elements will be removed from this set. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001430">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a795feb71ef9e0e997c3a5ce369005c4a"></a><!-- doxytag: member="UnicodeSet::removeAll" ref="a795feb71ef9e0e997c3a5ce369005c4a" args="(const UnicodeString &amp;s)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::removeAll </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Remove EACH of the characters in this string. </p>
<p>Note: "ch" == {"c", "h"} If this set already any particular character, it has no effect on that character. A frozen set will not be modified. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>the source string </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>this object, for chaining </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001416">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="a6eec59457382fa43c98de782186cce94"></a><!-- doxytag: member="UnicodeSet::removeAllStrings" ref="a6eec59457382fa43c98de782186cce94" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::removeAllStrings </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Remove all strings from this set. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a reference to this set. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001434">Stable:</a></b></dt><dd>ICU 4.2 </dd></dl>

</div>
</div>
<a class="anchor" id="a4ed67bc4ceb6838a965a04c68b39e918"></a><!-- doxytag: member="UnicodeSet::resemblesPattern" ref="a4ed67bc4ceb6838a965a04c68b39e918" args="(const UnicodeString &amp;pattern, int32_t pos)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::resemblesPattern </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>pos</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return true if the given position, in the given pattern, appears to be the start of a <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> pattern. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001383">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="afd3410661ec259b9a760ee35ac56ef52"></a><!-- doxytag: member="UnicodeSet::retain" ref="afd3410661ec259b9a760ee35ac56ef52" args="(UChar32 c)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::retain </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>c</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retain the specified character from this set if it is present. </p>
<p>A frozen set will not be modified. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001420">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a4edd71f0dd79a0114148c1da27e94494"></a><!-- doxytag: member="UnicodeSet::retain" ref="a4edd71f0dd79a0114148c1da27e94494" args="(UChar32 start, UChar32 end)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::retain </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retain only the elements in this set that are contained in the specified range. </p>
<p>If <code>end &gt; start</code> then an empty range is retained, leaving the set empty. This is equivalent to a boolean logic AND, or a set INTERSECTION. A frozen set will not be modified.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>first character, inclusive, of range to be retained to this set. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>last character, inclusive, of range to be retained to this set. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001419">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a43902955210b895b62dfa47e945abf96"></a><!-- doxytag: member="UnicodeSet::retainAll" ref="a43902955210b895b62dfa47e945abf96" args="(const UnicodeSet &amp;c)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::retainAll </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeSet.html">UnicodeSet</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>c</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retains only the elements in this set that are contained in the specified set. </p>
<p>In other words, removes from this set all of its elements that are not contained in the specified set. This operation effectively modifies this set so that its value is the <em>intersection</em> of the two sets. A frozen set will not be modified.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>set that defines which elements this set will retain. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001429">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a3e385a1847ecfd9272a36a012eb0b36e"></a><!-- doxytag: member="UnicodeSet::retainAll" ref="a3e385a1847ecfd9272a36a012eb0b36e" args="(const UnicodeString &amp;s)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::retainAll </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retains EACH of the characters in this string. </p>
<p>Note: "ch" == {"c", "h"} If this set already any particular character, it has no effect on that character. A frozen set will not be modified. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>the source string </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>this object, for chaining </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001414">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="a6188e8d02a4197661aa5c10021a777c6"></a><!-- doxytag: member="UnicodeSet::serialize" ref="a6188e8d02a4197661aa5c10021a777c6" args="(uint16_t *dest, int32_t destCapacity, UErrorCode &amp;ec) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeSet::serialize </td>
          <td>(</td>
          <td class="paramtype">uint16_t *&nbsp;</td>
          <td class="paramname"> <em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>destCapacity</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>ec</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Serializes this set into an array of 16-bit integers. </p>
<p>Serialization (currently) only records the characters in the set; multicharacter strings are ignored.</p>
<p>The array has following format (each line is one 16-bit integer):</p>
<p>length = (n+2*m) | (m!=0?0x8000:0) bmpLength = n; present if m!=0 bmp[0] bmp[1] ... bmp[n-1] supp-high[0] supp-low[0] supp-high[1] supp-low[1] ... supp-high[m-1] supp-low[m-1]</p>
<p>The array starts with a header. After the header are n bmp code points, then m supplementary code points. Either n or m or both may be zero. n+2*m is always &lt;= 0x7FFF.</p>
<p>If there are no supplementary characters (if m==0) then the header is one 16-bit integer, 'length', with value n.</p>
<p>If there are supplementary characters (if m!=0) then the header is two 16-bit integers. The first, 'length', has value (n+2*m)|0x8000. The second, 'bmpLength', has value n.</p>
<p>After the header the code points are stored in ascending order. Supplementary code points are stored as most significant 16 bits followed by least significant 16 bits.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dest</em>&nbsp;</td><td>pointer to buffer of destCapacity 16-bit integers. May be NULL only if destCapacity is zero. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>destCapacity</em>&nbsp;</td><td>size of dest, or zero. Must not be negative. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ec</em>&nbsp;</td><td>error code. Will be set to U_INDEX_OUTOFBOUNDS_ERROR if n+2*m &gt; 0x7FFF. Will be set to U_BUFFER_OVERFLOW_ERROR if n+2*m+(m!=0?2:1) &gt; destCapacity. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the total length of the serialized format, including the header, that is, n+2*m+(m!=0?2:1), or 0 on error other than U_BUFFER_OVERFLOW_ERROR. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001438">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="a8f6461feeb82a7f9de81909c5ef85155"></a><!-- doxytag: member="UnicodeSet::set" ref="a8f6461feeb82a7f9de81909c5ef85155" args="(UChar32 start, UChar32 end)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeSet.html">UnicodeSet</a>&amp; UnicodeSet::set </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&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>Make this object represent the range <code>start - end</code>. </p>
<p>If <code>end &gt; start</code> then this object is set to an an empty range. A frozen set will not be modified.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>first character in the set, inclusive </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>last character in the set, inclusive </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001382">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

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

<p>Make this <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> object invalid. </p>
<p>The string will test TRUE with <a class="el" href="classUnicodeSet.html#ad2987ff72267bd6692c57be0f0e39418" title="Determine if this object contains a valid set.">isBogus()</a>.</p>
<p>A bogus set has no value. It is different from an empty set. It can be used to indicate that no set value is available.</p>
<p>This utility function is used throughout the <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> implementation to indicate that a <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> operation failed, and may be used in other functions, especially but not exclusively when such functions do not take a UErrorCode for simplicity.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeSet.html#ad2987ff72267bd6692c57be0f0e39418" title="Determine if this object contains a valid set.">isBogus()</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001363">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a6c3a6816ee9b470937073fec4d62f4f0"></a><!-- doxytag: member="UnicodeSet::size" ref="a6c3a6816ee9b470937073fec4d62f4f0" args="(void) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int32_t UnicodeSet::size </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the number of elements in this set (its cardinality). </p>
<p>Note than the elements of a set may include both individual codepoints and strings.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the number of elements in this set (its cardinality). </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001389">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="af8af2071003396abcb3051a8f4f82e59"></a><!-- doxytag: member="UnicodeSet::span" ref="af8af2071003396abcb3051a8f4f82e59" args="(const UnicodeString &amp;s, int32_t start, USetSpanCondition spanCondition) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeSet::span </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a>&nbsp;</td>
          <td class="paramname"> <em>spanCondition</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the end of the substring of the input string according to the USetSpanCondition. </p>
<p>Same as <code>start+span(s.getBuffer()+start, s.length()-start, spanCondition)</code> after pinning start to 0&lt;=start&lt;=s.length(). </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>the string </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>the start index in the string for the span operation </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>spanCondition</em>&nbsp;</td><td>specifies the containment condition </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the exclusive end of the substring according to the spanCondition; the substring s.tempSubStringBetween(start, end) fulfills the spanCondition </dd></dl>
<dl class="draft"><dt><b><a class="el" href="draft.html#_draft000079">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 4.4 </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4" title="Argument values for whether span() and similar functions continue while the current...">USetSpanCondition</a> </dd></dl>

<p>Definition at line <a class="el" href="uniset_8h_source.html#l01651">1651</a> of file <a class="el" href="uniset_8h_source.html">uniset.h</a>.</p>

<p>References <a class="el" href="classUnicodeString.html#ab60ed4d07f726d3cceb3964c6556a34b">UnicodeString::getBuffer()</a>, <a class="el" href="unistr_8h_source.html#l03486">UnicodeString::length()</a>, and <a class="el" href="classUnicodeSet.html#ae429f2e852471745b94d6dba3dc38440">span()</a>.</p>

</div>
</div>
<a class="anchor" id="ae429f2e852471745b94d6dba3dc38440"></a><!-- doxytag: member="UnicodeSet::span" ref="ae429f2e852471745b94d6dba3dc38440" args="(const UChar *s, int32_t length, USetSpanCondition spanCondition) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeSet::span </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> *&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a>&nbsp;</td>
          <td class="paramname"> <em>spanCondition</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the length of the initial substring of the input string which consists only of characters and strings that are contained in this set (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE), or only of characters and strings that are not contained in this set (USET_SPAN_NOT_CONTAINED). </p>
<p>See USetSpanCondition for details. Similar to the strspn() C library function. Unpaired surrogates are treated according to <a class="el" href="classUnicodeSet.html#a5f83cbdf884770344420fb60e4f8e697" title="Returns true if this set contains the given character.">contains()</a> of their surrogate code points. This function works faster with a frozen set and with a non-negative string length argument. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>start of the string </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>of the string; can be -1 for NUL-terminated </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>spanCondition</em>&nbsp;</td><td>specifies the containment condition </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the length of the initial substring according to the spanCondition; 0 if the start of the string does not fit the spanCondition </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001402">Stable:</a></b></dt><dd>ICU 3.8 </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4" title="Argument values for whether span() and similar functions continue while the current...">USetSpanCondition</a> </dd></dl>

<p>Referenced by <a class="el" href="uniset_8h_source.html#l01651">span()</a>.</p>

</div>
</div>
<a class="anchor" id="a87b687130fcd69c5b6603fd8cbb76136"></a><!-- doxytag: member="UnicodeSet::spanBack" ref="a87b687130fcd69c5b6603fd8cbb76136" args="(const UnicodeString &amp;s, int32_t limit, USetSpanCondition spanCondition) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeSet::spanBack </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>limit</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a>&nbsp;</td>
          <td class="paramname"> <em>spanCondition</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the start of the substring of the input string according to the USetSpanCondition. </p>
<p>Same as <code>spanBack(s.getBuffer(), limit, spanCondition)</code> after pinning limit to 0&lt;=end&lt;=s.length(). </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>the string </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>limit</em>&nbsp;</td><td>the exclusive-end index in the string for the span operation (use s.length() or INT32_MAX for spanning back from the end of the string) </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>spanCondition</em>&nbsp;</td><td>specifies the containment condition </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the start of the substring according to the spanCondition; the substring s.tempSubStringBetween(start, limit) fulfills the spanCondition </dd></dl>
<dl class="draft"><dt><b><a class="el" href="draft.html#_draft000080">Draft:</a></b></dt><dd>This API may be changed in the future versions and was introduced in ICU 4.4 </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4" title="Argument values for whether span() and similar functions continue while the current...">USetSpanCondition</a> </dd></dl>

<p>Definition at line <a class="el" href="uniset_8h_source.html#l01661">1661</a> of file <a class="el" href="uniset_8h_source.html">uniset.h</a>.</p>

<p>References <a class="el" href="classUnicodeString.html#ab60ed4d07f726d3cceb3964c6556a34b">UnicodeString::getBuffer()</a>, <a class="el" href="unistr_8h_source.html#l03486">UnicodeString::length()</a>, and <a class="el" href="classUnicodeSet.html#ac95f19d6cc2033b05455838842337d43">spanBack()</a>.</p>

</div>
</div>
<a class="anchor" id="ac95f19d6cc2033b05455838842337d43"></a><!-- doxytag: member="UnicodeSet::spanBack" ref="ac95f19d6cc2033b05455838842337d43" args="(const UChar *s, int32_t length, USetSpanCondition spanCondition) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeSet::spanBack </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac">UChar</a> *&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a>&nbsp;</td>
          <td class="paramname"> <em>spanCondition</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the start of the trailing substring of the input string which consists only of characters and strings that are contained in this set (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE), or only of characters and strings that are not contained in this set (USET_SPAN_NOT_CONTAINED). </p>
<p>See USetSpanCondition for details. Unpaired surrogates are treated according to <a class="el" href="classUnicodeSet.html#a5f83cbdf884770344420fb60e4f8e697" title="Returns true if this set contains the given character.">contains()</a> of their surrogate code points. This function works faster with a frozen set and with a non-negative string length argument. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>start of the string </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>of the string; can be -1 for NUL-terminated </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>spanCondition</em>&nbsp;</td><td>specifies the containment condition </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the start of the trailing substring according to the spanCondition; the string length if the end of the string does not fit the spanCondition </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001403">Stable:</a></b></dt><dd>ICU 3.8 </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4" title="Argument values for whether span() and similar functions continue while the current...">USetSpanCondition</a> </dd></dl>

<p>Referenced by <a class="el" href="uniset_8h_source.html#l01661">spanBack()</a>.</p>

</div>
</div>
<a class="anchor" id="a1d119bcbf7656d73aeb9267383952e9e"></a><!-- doxytag: member="UnicodeSet::spanBackUTF8" ref="a1d119bcbf7656d73aeb9267383952e9e" args="(const char *s, int32_t length, USetSpanCondition spanCondition) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeSet::spanBackUTF8 </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a>&nbsp;</td>
          <td class="paramname"> <em>spanCondition</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the start of the trailing substring of the input string which consists only of characters and strings that are contained in this set (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE), or only of characters and strings that are not contained in this set (USET_SPAN_NOT_CONTAINED). </p>
<p>See USetSpanCondition for details. Malformed byte sequences are treated according to contains(0xfffd). This function works faster with a frozen set and with a non-negative string length argument. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>start of the string (UTF-8) </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>of the string; can be -1 for NUL-terminated </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>spanCondition</em>&nbsp;</td><td>specifies the containment condition </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the start of the trailing substring according to the spanCondition; the string length if the end of the string does not fit the spanCondition </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001405">Stable:</a></b></dt><dd>ICU 3.8 </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4" title="Argument values for whether span() and similar functions continue while the current...">USetSpanCondition</a> </dd></dl>

</div>
</div>
<a class="anchor" id="af8263eebbaa180e57b55bd909882a3b8"></a><!-- doxytag: member="UnicodeSet::spanUTF8" ref="af8263eebbaa180e57b55bd909882a3b8" args="(const char *s, int32_t length, USetSpanCondition spanCondition) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeSet::spanUTF8 </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a>&nbsp;</td>
          <td class="paramname"> <em>spanCondition</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the length of the initial substring of the input string which consists only of characters and strings that are contained in this set (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE), or only of characters and strings that are not contained in this set (USET_SPAN_NOT_CONTAINED). </p>
<p>See USetSpanCondition for details. Similar to the strspn() C library function. Malformed byte sequences are treated according to contains(0xfffd). This function works faster with a frozen set and with a non-negative string length argument. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>start of the string (UTF-8) </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>of the string; can be -1 for NUL-terminated </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>spanCondition</em>&nbsp;</td><td>specifies the containment condition </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the length of the initial substring according to the spanCondition; 0 if the start of the string does not fit the spanCondition </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001404">Stable:</a></b></dt><dd>ICU 3.8 </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4" title="Argument values for whether span() and similar functions continue while the current...">USetSpanCondition</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a7aa98466d94bcbdcfcf79f57e171c8e7"></a><!-- doxytag: member="UnicodeSet::toPattern" ref="a7aa98466d94bcbdcfcf79f57e171c8e7" args="(UnicodeString &amp;result, UBool escapeUnprintable=FALSE) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classUnicodeString.html">UnicodeString</a>&amp; UnicodeSet::toPattern </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>result</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td>
          <td class="paramname"> <em>escapeUnprintable</em> = <code>FALSE</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns a string representation of this set. </p>
<p>If the result of calling this function is passed to a <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> constructor, it will produce another set that is equal to this one. A frozen set will not be modified. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>result</em>&nbsp;</td><td>the string to receive the rules. Previous contents will be deleted. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>escapeUnprintable</em>&nbsp;</td><td>if TRUE then convert unprintable character to their hex escape representations, \uxxxx or \Uxxxxxxxx. Unprintable characters are those other than U+000A, U+0020..U+007E. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001386">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Implements <a class="el" href="classUnicodeMatcher.html#a0f8d0182d1e2949ea9adfd2b615e94dd">UnicodeMatcher</a>.</p>

</div>
</div>
<a class="anchor" id="a62e24ae4792b422ade146d03c7a4b035"></a><!-- doxytag: member="UnicodeSet::toUSet" ref="a62e24ae4792b422ade146d03c7a4b035" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> * UnicodeSet::toUSet </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Produce a const USet * pointer for this <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>. </p>
<p>USet is the plain C type for <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a></p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a const USet pointer for this <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001378">Stable:</a></b></dt><dd>ICU 4.2 </dd></dl>

<p>Definition at line <a class="el" href="uniset_8h_source.html#l01647">1647</a> of file <a class="el" href="uniset_8h_source.html">uniset.h</a>.</p>

</div>
</div>
<a class="anchor" id="a92b8fb5933616cb52ee0da08bb927ecc"></a><!-- doxytag: member="UnicodeSet::toUSet" ref="a92b8fb5933616cb52ee0da08bb927ecc" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> * UnicodeSet::toUSet </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Produce a USet * pointer for this <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>. </p>
<p>USet is the plain C type for <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a></p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a USet pointer for this <a class="el" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001377">Stable:</a></b></dt><dd>ICU 4.2 </dd></dl>

<p>Definition at line <a class="el" href="uniset_8h_source.html#l01643">1643</a> of file <a class="el" href="uniset_8h_source.html">uniset.h</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="uniset_8h_source.html">uniset.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>