%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /proc/self/root/usr/local/easy/share/doc/easy-libicu-doc-4.0.1/
Upload File :
Create Path :
Current File : //proc/self/root/usr/local/easy/share/doc/easy-libicu-doc-4.0.1/classUnicodeString.html

<!-- 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.0.1: UnicodeString 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>UnicodeString Class Reference</h1><!-- doxytag: class="UnicodeString" --><!-- doxytag: inherits="Replaceable" -->
<p><a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> is a string class that stores Unicode characters directly and provides similar functionality as the Java String and StringBuffer classes.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="unistr_8h_source.html">unistr.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for UnicodeString:</div>
<div class="dynsection">
 <div class="center">
  <img src="classUnicodeString.gif" usemap="#UnicodeString_map" alt=""/>
  <map id="UnicodeString_map" name="UnicodeString_map">
<area href="classReplaceable.html" alt="Replaceable" shape="rect" coords="0,112,91,136"/>
<area href="classUObject.html" alt="UObject" shape="rect" coords="0,56,91,80"/>
<area href="classUMemory.html" alt="UMemory" shape="rect" coords="0,0,91,24"/>
</map>
 </div>
</div>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Data Structures</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">union &nbsp;</td><td class="memItemRight" valign="bottom"><b>StackBufferOrFields</b></td></tr>
<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="classUnicodeString.html#a7ffe265551a9bf6ea0e4c0cb508cea8a">EInvariant</a> { <a class="el" href="classUnicodeString.html#a7ffe265551a9bf6ea0e4c0cb508cea8aaf60977cf9e4fde77211e7828f0d2ec5b">kInvariant</a>
 }</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><p>Constant to be used in the UnicodeString(char *, int32_t, EInvariant) constructor which constructs a Unicode string from an invariant-character char * string. </p>
 <a href="classUnicodeString.html#a7ffe265551a9bf6ea0e4c0cb508cea8a">More...</a><br/></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="classUnicodeString.html#a0dca5ffc55b3f73e9b7382749cffcc76">operator==</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Equality operator.  <a href="#a0dca5ffc55b3f73e9b7382749cffcc76"></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="classUnicodeString.html#a77b6ddf0e458fa0c1c9378484305f695">operator!=</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Inequality operator.  <a href="#a77b6ddf0e458fa0c1c9378484305f695"></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="classUnicodeString.html#a3e51f324b52e9f1b563e7da39138215d">operator&gt;</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Greater than operator.  <a href="#a3e51f324b52e9f1b563e7da39138215d"></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="classUnicodeString.html#a52ac4f79ff0c1dee2f39e38c9abcf030">operator&lt;</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Less than operator.  <a href="#a52ac4f79ff0c1dee2f39e38c9abcf030"></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="classUnicodeString.html#ab5d1ffd7cdd87e3756a991c489f8f8f1">operator&gt;=</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Greater than or equal operator.  <a href="#ab5d1ffd7cdd87e3756a991c489f8f8f1"></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="classUnicodeString.html#ac6c53077851d1b6af4c45a268638d46e">operator&lt;=</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Less than or equal operator.  <a href="#ac6c53077851d1b6af4c45a268638d46e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#aceb5ebe345197e0932d6b1c49a63493e">compare</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare the characters bitwise in this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> to the characters in <code>text</code>.  <a href="#aceb5ebe345197e0932d6b1c49a63493e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a5b0909813b13e3cebb0ea8915e822dd8">compare</a> (int32_t start, int32_t length, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare the characters bitwise in the range [<code>start</code>, <code>start + length</code>) with the characters in <code>text</code>.  <a href="#a5b0909813b13e3cebb0ea8915e822dd8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#afedda065f5a283232bffd434a3765af1">compare</a> (int32_t start, int32_t length, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText, int32_t srcStart, int32_t srcLength) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare the characters bitwise in the range [<code>start</code>, <code>start + length</code>) with the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>).  <a href="#afedda065f5a283232bffd434a3765af1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a831c909209e45615aa0c4c368b7d600f">compare</a> (const UChar *srcChars, int32_t srcLength) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare the characters bitwise in this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> with the first <code>srcLength</code> characters in <code>srcChars</code>.  <a href="#a831c909209e45615aa0c4c368b7d600f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#abf1a9b87377c49721ec32371afabb5a6">compare</a> (int32_t start, int32_t length, const UChar *srcChars) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare the characters bitwise in the range [<code>start</code>, <code>start + length</code>) with the first <code>length</code> characters in <code>srcChars</code>.  <a href="#abf1a9b87377c49721ec32371afabb5a6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a14d0ef73e76d1c90702ee5d4923ae8f9">compare</a> (int32_t start, int32_t length, const UChar *srcChars, int32_t srcStart, int32_t srcLength) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare the characters bitwise in the range [<code>start</code>, <code>start + length</code>) with the characters in <code>srcChars</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>).  <a href="#a14d0ef73e76d1c90702ee5d4923ae8f9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a7d1d10ff930be9e96c21307360010e47">compareBetween</a> (int32_t start, int32_t limit, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText, int32_t srcStart, int32_t srcLimit) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare the characters bitwise in the range [<code>start</code>, <code>limit</code>) with the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcLimit</code>).  <a href="#a7d1d10ff930be9e96c21307360010e47"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#ae478d3988b5e05e0c552fbd766de69f7">compareCodePointOrder</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two Unicode strings in code point order.  <a href="#ae478d3988b5e05e0c552fbd766de69f7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#ac128831d632b323894b7f5851f2f6cbb">compareCodePointOrder</a> (int32_t start, int32_t length, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two Unicode strings in code point order.  <a href="#ac128831d632b323894b7f5851f2f6cbb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#ab4d8310695ede2cb2ae567b42b4be23d">compareCodePointOrder</a> (int32_t start, int32_t length, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText, int32_t srcStart, int32_t srcLength) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two Unicode strings in code point order.  <a href="#ab4d8310695ede2cb2ae567b42b4be23d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a0992f7174f19a7060c88849867d1c676">compareCodePointOrder</a> (const UChar *srcChars, int32_t srcLength) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two Unicode strings in code point order.  <a href="#a0992f7174f19a7060c88849867d1c676"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a6f4f499a6a85494afe6a59bb1fbbe757">compareCodePointOrder</a> (int32_t start, int32_t length, const UChar *srcChars) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two Unicode strings in code point order.  <a href="#a6f4f499a6a85494afe6a59bb1fbbe757"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#aa71f8cb059b71c6ca80b8539740d6cac">compareCodePointOrder</a> (int32_t start, int32_t length, const UChar *srcChars, int32_t srcStart, int32_t srcLength) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two Unicode strings in code point order.  <a href="#aa71f8cb059b71c6ca80b8539740d6cac"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a0de2de75dc86112cb63a5fc6c9cd874f">compareCodePointOrderBetween</a> (int32_t start, int32_t limit, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText, int32_t srcStart, int32_t srcLimit) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two Unicode strings in code point order.  <a href="#a0de2de75dc86112cb63a5fc6c9cd874f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#ac633b7697029cfe347dcae70ce732939">caseCompare</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text, uint32_t options) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two strings case-insensitively using full case folding.  <a href="#ac633b7697029cfe347dcae70ce732939"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a92f1f3ddf35f61e0bb0a05055f9e72c7">caseCompare</a> (int32_t start, int32_t length, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText, uint32_t options) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two strings case-insensitively using full case folding.  <a href="#a92f1f3ddf35f61e0bb0a05055f9e72c7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a6c7c33986b62cb279c06a601e7405db4">caseCompare</a> (int32_t start, int32_t length, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText, int32_t srcStart, int32_t srcLength, uint32_t options) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two strings case-insensitively using full case folding.  <a href="#a6c7c33986b62cb279c06a601e7405db4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#aa86524e659199fa9a3d0c6d8e4c89f2d">caseCompare</a> (const UChar *srcChars, int32_t srcLength, uint32_t options) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two strings case-insensitively using full case folding.  <a href="#aa86524e659199fa9a3d0c6d8e4c89f2d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a4f970386c68b335bd5a953c990437eb2">caseCompare</a> (int32_t start, int32_t length, const UChar *srcChars, uint32_t options) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two strings case-insensitively using full case folding.  <a href="#a4f970386c68b335bd5a953c990437eb2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a949a065b923a5da215c6e35aea741e03">caseCompare</a> (int32_t start, int32_t length, const UChar *srcChars, int32_t srcStart, int32_t srcLength, uint32_t options) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two strings case-insensitively using full case folding.  <a href="#a949a065b923a5da215c6e35aea741e03"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a17b496f8cfa59eb453d0af3c35cf52d8">caseCompareBetween</a> (int32_t start, int32_t limit, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText, int32_t srcStart, int32_t srcLimit, uint32_t options) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two strings case-insensitively using full case folding.  <a href="#a17b496f8cfa59eb453d0af3c35cf52d8"></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="classUnicodeString.html#ab0e077b76c436892cd654438cac91158">startsWith</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determine if this starts with the characters in <code>text</code>.  <a href="#ab0e077b76c436892cd654438cac91158"></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="classUnicodeString.html#afd20f639672a52e36825458462ddcd7f">startsWith</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText, int32_t srcStart, int32_t srcLength) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determine if this starts with the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>).  <a href="#afd20f639672a52e36825458462ddcd7f"></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="classUnicodeString.html#ad12b7ef01da4555975a5cf9a4600d23e">startsWith</a> (const UChar *srcChars, int32_t srcLength) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determine if this starts with the characters in <code>srcChars</code>.  <a href="#ad12b7ef01da4555975a5cf9a4600d23e"></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="classUnicodeString.html#a9f2cd1d245ca229be31991f3ed9d835a">startsWith</a> (const UChar *srcChars, int32_t srcStart, int32_t srcLength) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determine if this ends with the characters in <code>srcChars</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>).  <a href="#a9f2cd1d245ca229be31991f3ed9d835a"></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="classUnicodeString.html#ab720aa6e352deda84f988bc0e8fe2db4">endsWith</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determine if this ends with the characters in <code>text</code>.  <a href="#ab720aa6e352deda84f988bc0e8fe2db4"></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="classUnicodeString.html#a8eb8e157edc82cdcc51d9420ff3f610c">endsWith</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText, int32_t srcStart, int32_t srcLength) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determine if this ends with the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>).  <a href="#a8eb8e157edc82cdcc51d9420ff3f610c"></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="classUnicodeString.html#afe8c45af2965c45d76a387be46f57bc5">endsWith</a> (const UChar *srcChars, int32_t srcLength) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determine if this ends with the characters in <code>srcChars</code>.  <a href="#afe8c45af2965c45d76a387be46f57bc5"></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="classUnicodeString.html#a3fd044063a86573cd5f0b74bb58bd99a">endsWith</a> (const UChar *srcChars, int32_t srcStart, int32_t srcLength) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determine if this ends with the characters in <code>srcChars</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>).  <a href="#a3fd044063a86573cd5f0b74bb58bd99a"></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="classUnicodeString.html#a95d26a26d753346832a09d8f3fbc5c21">indexOf</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the first occurrence of the characters in <code>text</code>, using bitwise comparison.  <a href="#a95d26a26d753346832a09d8f3fbc5c21"></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="classUnicodeString.html#a8cc509d7e8167d4f3cb54279c92f0140">indexOf</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text, int32_t start) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the first occurrence of the characters in <code>text</code> starting at offset <code>start</code>, using bitwise comparison.  <a href="#a8cc509d7e8167d4f3cb54279c92f0140"></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="classUnicodeString.html#a6fd64f74511b448ec9ee15434fb3a09b">indexOf</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text, int32_t start, int32_t length) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the first occurrence in the range [<code>start</code>, <code>start + length</code>) of the characters in <code>text</code>, using bitwise comparison.  <a href="#a6fd64f74511b448ec9ee15434fb3a09b"></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="classUnicodeString.html#a1100d0d24f929546012ea6f71dc4809d">indexOf</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText, int32_t srcStart, int32_t srcLength, int32_t start, int32_t length) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the first occurrence in the range [<code>start</code>, <code>start + length</code>) of the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>), using bitwise comparison.  <a href="#a1100d0d24f929546012ea6f71dc4809d"></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="classUnicodeString.html#a2979c7d50ff98dc4778f66b6bc3c2eba">indexOf</a> (const UChar *srcChars, int32_t srcLength, int32_t start) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the first occurrence of the characters in <code>srcChars</code> starting at offset <code>start</code>, using bitwise comparison.  <a href="#a2979c7d50ff98dc4778f66b6bc3c2eba"></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="classUnicodeString.html#afef7ea1a41634a2cb705181a0901acf8">indexOf</a> (const UChar *srcChars, int32_t srcLength, int32_t start, int32_t length) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the first occurrence in the range [<code>start</code>, <code>start + length</code>) of the characters in <code>srcChars</code>, using bitwise comparison.  <a href="#afef7ea1a41634a2cb705181a0901acf8"></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="classUnicodeString.html#a83234340f020cebee8e7fb2ef0e461dd">indexOf</a> (const UChar *srcChars, int32_t srcStart, int32_t srcLength, int32_t start, int32_t length) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the first occurrence in the range [<code>start</code>, <code>start + length</code>) of the characters in <code>srcChars</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>), using bitwise comparison.  <a href="#a83234340f020cebee8e7fb2ef0e461dd"></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="classUnicodeString.html#a87e9187b51ea0ec9f09fef60bfba675c">indexOf</a> (UChar c) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the first occurrence of the BMP code point <code>c</code>, using bitwise comparison.  <a href="#a87e9187b51ea0ec9f09fef60bfba675c"></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="classUnicodeString.html#a30bdd224b64c0e6267595a15c93fc3a7">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">Locate in this the first occurrence of the code point <code>c</code>, using bitwise comparison.  <a href="#a30bdd224b64c0e6267595a15c93fc3a7"></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="classUnicodeString.html#afbdcf763ceb9b97ab0616342a4f8f973">indexOf</a> (UChar c, int32_t start) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the first occurrence of the BMP code point <code>c</code>, starting at offset <code>start</code>, using bitwise comparison.  <a href="#afbdcf763ceb9b97ab0616342a4f8f973"></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="classUnicodeString.html#ae47d3da37887c5be54e30ee9274b09e6">indexOf</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c, int32_t start) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the first occurrence of the code point <code>c</code> starting at offset <code>start</code>, using bitwise comparison.  <a href="#ae47d3da37887c5be54e30ee9274b09e6"></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="classUnicodeString.html#aaf31e1fcb5b1d50af7a66111da937097">indexOf</a> (UChar c, int32_t start, int32_t length) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the first occurrence of the BMP code point <code>c</code> in the range [<code>start</code>, <code>start + length</code>), using bitwise comparison.  <a href="#aaf31e1fcb5b1d50af7a66111da937097"></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="classUnicodeString.html#a4317a47256f75125bbda1e8e4b3e6028">indexOf</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c, int32_t start, int32_t length) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the first occurrence of the code point <code>c</code> in the range [<code>start</code>, <code>start + length</code>), using bitwise comparison.  <a href="#a4317a47256f75125bbda1e8e4b3e6028"></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="classUnicodeString.html#ac4b5689a7a60e28378dd6bf9f06d8681">lastIndexOf</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the last occurrence of the characters in <code>text</code>, using bitwise comparison.  <a href="#ac4b5689a7a60e28378dd6bf9f06d8681"></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="classUnicodeString.html#a24b0b6c1064d0c2c7a96bf67f3704390">lastIndexOf</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text, int32_t start) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the last occurrence of the characters in <code>text</code> starting at offset <code>start</code>, using bitwise comparison.  <a href="#a24b0b6c1064d0c2c7a96bf67f3704390"></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="classUnicodeString.html#a22eb2250c71d81826e74ec80b7efd71f">lastIndexOf</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text, int32_t start, int32_t length) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the last occurrence in the range [<code>start</code>, <code>start + length</code>) of the characters in <code>text</code>, using bitwise comparison.  <a href="#a22eb2250c71d81826e74ec80b7efd71f"></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="classUnicodeString.html#a819576d305c2d69e6a8aa1d47dd27635">lastIndexOf</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText, int32_t srcStart, int32_t srcLength, int32_t start, int32_t length) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the last occurrence in the range [<code>start</code>, <code>start + length</code>) of the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>), using bitwise comparison.  <a href="#a819576d305c2d69e6a8aa1d47dd27635"></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="classUnicodeString.html#a888a5eef6a80755f1e3455b6c5fb40f1">lastIndexOf</a> (const UChar *srcChars, int32_t srcLength, int32_t start) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the last occurrence of the characters in <code>srcChars</code> starting at offset <code>start</code>, using bitwise comparison.  <a href="#a888a5eef6a80755f1e3455b6c5fb40f1"></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="classUnicodeString.html#a70730e2064ad98a0f5cd377145a4d978">lastIndexOf</a> (const UChar *srcChars, int32_t srcLength, int32_t start, int32_t length) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the last occurrence in the range [<code>start</code>, <code>start + length</code>) of the characters in <code>srcChars</code>, using bitwise comparison.  <a href="#a70730e2064ad98a0f5cd377145a4d978"></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="classUnicodeString.html#a2b5ee35956d7270e661fb5f48aa153f6">lastIndexOf</a> (const UChar *srcChars, int32_t srcStart, int32_t srcLength, int32_t start, int32_t length) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the last occurrence in the range [<code>start</code>, <code>start + length</code>) of the characters in <code>srcChars</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>), using bitwise comparison.  <a href="#a2b5ee35956d7270e661fb5f48aa153f6"></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="classUnicodeString.html#a1e47f5a816151974defc56044f69b5f0">lastIndexOf</a> (UChar c) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the last occurrence of the BMP code point <code>c</code>, using bitwise comparison.  <a href="#a1e47f5a816151974defc56044f69b5f0"></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="classUnicodeString.html#a05607edd87bf7d42ba92437d4acd3201">lastIndexOf</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the last occurrence of the code point <code>c</code>, using bitwise comparison.  <a href="#a05607edd87bf7d42ba92437d4acd3201"></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="classUnicodeString.html#a4b36bd76b30462f824dbd50c83ddc1c7">lastIndexOf</a> (UChar c, int32_t start) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the last occurrence of the BMP code point <code>c</code> starting at offset <code>start</code>, using bitwise comparison.  <a href="#a4b36bd76b30462f824dbd50c83ddc1c7"></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="classUnicodeString.html#af32e8297171296abc6f5f65a6532e982">lastIndexOf</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c, int32_t start) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the last occurrence of the code point <code>c</code> starting at offset <code>start</code>, using bitwise comparison.  <a href="#af32e8297171296abc6f5f65a6532e982"></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="classUnicodeString.html#aa1d1bdeca0ea48faeff72e1fa0ac96c1">lastIndexOf</a> (UChar c, int32_t start, int32_t length) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the last occurrence of the BMP code point <code>c</code> in the range [<code>start</code>, <code>start + length</code>), using bitwise comparison.  <a href="#aa1d1bdeca0ea48faeff72e1fa0ac96c1"></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="classUnicodeString.html#ab10f3a578417944a4bf82fe251874ef1">lastIndexOf</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c, int32_t start, int32_t length) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locate in this the last occurrence of the code point <code>c</code> in the range [<code>start</code>, <code>start + length</code>), using bitwise comparison.  <a href="#ab10f3a578417944a4bf82fe251874ef1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">UChar&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#ae3ffb6e15396dff152cb459ce4008f90">charAt</a> (int32_t offset) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the code unit at offset <code>offset</code>.  <a href="#ae3ffb6e15396dff152cb459ce4008f90"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">UChar&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#acc98e688603bf1b2dbfd6303ec8783f5">operator[]</a> (int32_t offset) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the code unit at offset <code>offset</code>.  <a href="#acc98e688603bf1b2dbfd6303ec8783f5"></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="classUnicodeString.html#a9ca80740ef5199cf1809c66a4ef6ba3d">char32At</a> (int32_t offset) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the code point that contains the code unit at offset <code>offset</code>.  <a href="#a9ca80740ef5199cf1809c66a4ef6ba3d"></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="classUnicodeString.html#a121c8e74fb409a9b2e3a503f965f75f1">getChar32Start</a> (int32_t offset) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adjust a random-access offset so that it points to the beginning of a Unicode character.  <a href="#a121c8e74fb409a9b2e3a503f965f75f1"></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="classUnicodeString.html#a20f1e4c661d0fc07c800ad8b4ec37587">getChar32Limit</a> (int32_t offset) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adjust a random-access offset so that it points behind a Unicode character.  <a href="#a20f1e4c661d0fc07c800ad8b4ec37587"></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="classUnicodeString.html#a29075d1d1a125a472dea09b13da3c80d">moveIndex32</a> (int32_t index, int32_t delta) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Move the code unit index along the string by delta code points.  <a href="#a29075d1d1a125a472dea09b13da3c80d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a9b2d4e417740becdb24a59fab263b8e3">extract</a> (int32_t start, int32_t length, UChar *dst, int32_t dstStart=0) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy the characters in the range [<code>start</code>, <code>start + length</code>) into the array <code>dst</code>, beginning at <code>dstStart</code>.  <a href="#a9b2d4e417740becdb24a59fab263b8e3"></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="classUnicodeString.html#a3cfd4a0adb5625f4895139fd9f045f99">extract</a> (UChar *dest, int32_t destCapacity, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;errorCode) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy the contents of the string into dest.  <a href="#a3cfd4a0adb5625f4895139fd9f045f99"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a36effb107202af602f11e587375357f8">extract</a> (int32_t start, int32_t length, <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;target) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy the characters in the range [<code>start</code>, <code>start + length</code>) into the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> <code>target</code>.  <a href="#a36effb107202af602f11e587375357f8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#ad5dbb294a5eb01e1b4af82abc8eceeed">extractBetween</a> (int32_t start, int32_t limit, UChar *dst, int32_t dstStart=0) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy the characters in the range [<code>start</code>, <code>limit</code>) into the array <code>dst</code>, beginning at <code>dstStart</code>.  <a href="#ad5dbb294a5eb01e1b4af82abc8eceeed"></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="classUnicodeString.html#ad25e9b7db7e37fa102f152729b5f2aa5">extractBetween</a> (int32_t start, int32_t limit, <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;target) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy the characters in the range [<code>start</code>, <code>limit</code>) into the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> <code>target</code>.  <a href="#ad25e9b7db7e37fa102f152729b5f2aa5"></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="classUnicodeString.html#a56cd8919f25e345065d934462b33fa36">extract</a> (int32_t start, int32_t startLength, char *target, int32_t targetCapacity, enum <a class="el" href="classUnicodeString.html#a7ffe265551a9bf6ea0e4c0cb508cea8a">EInvariant</a> inv) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy the characters in the range [<code>start</code>, <code>start + length</code>) into an array of characters.  <a href="#a56cd8919f25e345065d934462b33fa36"></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="classUnicodeString.html#ac15fabe40a5101c6419492dc751da345">extract</a> (int32_t start, int32_t startLength, char *target, const char *codepage=0) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy the characters in the range [<code>start</code>, <code>start + length</code>) into an array of characters in a specified codepage.  <a href="#ac15fabe40a5101c6419492dc751da345"></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="classUnicodeString.html#a1c516ba31e224a44282f8602f90bd670">extract</a> (int32_t start, int32_t startLength, char *target, uint32_t targetLength, const char *codepage=0) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy the characters in the range [<code>start</code>, <code>start + length</code>) into an array of characters in a specified codepage.  <a href="#a1c516ba31e224a44282f8602f90bd670"></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="classUnicodeString.html#a0fb8e2d2d26be9db07ab4022ebb30fa6">extract</a> (char *dest, int32_t destCapacity, <a class="el" href="ucnv__err_8h.html#a0c2dcfbf71ad577f5285869e1ceb26b1">UConverter</a> *cnv, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;errorCode) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Convert the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> into a codepage string using an existing UConverter.  <a href="#a0fb8e2d2d26be9db07ab4022ebb30fa6"></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="classUnicodeString.html#ac4cf80391a0e523c27aacaba796aede6">length</a> (void) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the length of the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object.  <a href="#ac4cf80391a0e523c27aacaba796aede6"></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="classUnicodeString.html#a8bdc18ea800dbf166cda5aba2d63612f">countChar32</a> (int32_t start=0, int32_t length=INT32_MAX) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Count Unicode code points in the length UChar code units of the string.  <a href="#a8bdc18ea800dbf166cda5aba2d63612f"></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="classUnicodeString.html#ad06ed58e01980802cdbc8dfff6179691">hasMoreChar32Than</a> (int32_t start, int32_t length, int32_t number) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if the length UChar code units of the string contain more Unicode code points than a certain number.  <a href="#ad06ed58e01980802cdbc8dfff6179691"></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="classUnicodeString.html#aeefca846dd927d3db49c0cdc45ce744c">isEmpty</a> (void) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determine if this string is empty.  <a href="#aeefca846dd927d3db49c0cdc45ce744c"></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="classUnicodeString.html#a924521b1d7d9828ac9374e467144b0cc">getCapacity</a> (void) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the capacity of the internal buffer of the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object.  <a href="#a924521b1d7d9828ac9374e467144b0cc"></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="classUnicodeString.html#a6724ae76d51cf802ded394eaedd7b3fd">hashCode</a> (void) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generate a hash code for this object.  <a href="#a6724ae76d51cf802ded394eaedd7b3fd"></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="classUnicodeString.html#af61191bafca3f7ed295a9eba2a1eb401">isBogus</a> (void) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determine if this object contains a valid string.  <a href="#af61191bafca3f7ed295a9eba2a1eb401"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a5dd1ec62e48abc757646189cbcf2baa7">operator=</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assignment operator.  <a href="#a5dd1ec62e48abc757646189cbcf2baa7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a941a99ae09f01f1d69c95a4cb59dd56f">fastCopyFrom</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;src)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Almost the same as the assignment operator.  <a href="#a941a99ae09f01f1d69c95a4cb59dd56f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a1d75d4701b858d95a49dbc07f8d1ba6c">operator=</a> (UChar ch)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assignment operator.  <a href="#a1d75d4701b858d95a49dbc07f8d1ba6c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a0d1a2c1f297ceab74014d51e45c421f4">operator=</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> ch)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assignment operator.  <a href="#a0d1a2c1f297ceab74014d51e45c421f4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a3897abda046dd38819aa8f2c8078861e">setTo</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText, int32_t srcStart)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the text in the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object to the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcText.length()</code>).  <a href="#a3897abda046dd38819aa8f2c8078861e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#ac38d68fb81c7421b654d3287d9d54206">setTo</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText, int32_t srcStart, int32_t srcLength)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the text in the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object to the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>).  <a href="#ac38d68fb81c7421b654d3287d9d54206"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a318d7dc15dfce8ff8e46721ccd5c1899">setTo</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the text in the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object to the characters in <code>srcText</code>.  <a href="#a318d7dc15dfce8ff8e46721ccd5c1899"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a5bae314691db9ce0a805343bde6ea2b3">setTo</a> (const UChar *srcChars, int32_t srcLength)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the characters in the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object to the characters in <code>srcChars</code>.  <a href="#a5bae314691db9ce0a805343bde6ea2b3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a56c98d01627a9407cdb4605242ce4d73">setTo</a> (UChar srcChar)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the characters in the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object to the code unit <code>srcChar</code>.  <a href="#a56c98d01627a9407cdb4605242ce4d73"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a79ab8bb668477b4ccebbdc894c1d321b">setTo</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> srcChar)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the characters in the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object to the code point <code>srcChar</code>.  <a href="#a79ab8bb668477b4ccebbdc894c1d321b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a98527226ab905a05df3e73082a0af3e3">setTo</a> (<a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> isTerminated, const UChar *text, int32_t textLength)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Aliasing <a class="el" href="classUnicodeString.html#a3897abda046dd38819aa8f2c8078861e" title="Set the text in the UnicodeString object to the characters in srcText in the range...">setTo()</a> function, analogous to the readonly-aliasing UChar* constructor.  <a href="#a98527226ab905a05df3e73082a0af3e3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a0fcc4d2faad3930832a98ae820779264">setTo</a> (UChar *buffer, int32_t buffLength, int32_t buffCapacity)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Aliasing <a class="el" href="classUnicodeString.html#a3897abda046dd38819aa8f2c8078861e" title="Set the text in the UnicodeString object to the characters in srcText in the range...">setTo()</a> function, analogous to the writable-aliasing UChar* constructor.  <a href="#a0fcc4d2faad3930832a98ae820779264"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a0b796d590a302f57f5ba6bd7a8d245f2">setToBogus</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Make this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object invalid.  <a href="#a0b796d590a302f57f5ba6bd7a8d245f2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a695479485a3b9f1fcaa25313ea87a83c">setCharAt</a> (int32_t offset, UChar ch)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the character at the specified offset to the specified character.  <a href="#a695479485a3b9f1fcaa25313ea87a83c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a3ac2e89f8f74c45ff13bf71e6062734b">operator+=</a> (UChar ch)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Append operator.  <a href="#a3ac2e89f8f74c45ff13bf71e6062734b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a6e1482ab21f7ef9e5439981bad06f1ee">operator+=</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> ch)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Append operator.  <a href="#a6e1482ab21f7ef9e5439981bad06f1ee"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a7091ecbd1353a22279a93d95e05da385">operator+=</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Append operator.  <a href="#a7091ecbd1353a22279a93d95e05da385"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#af7f9ab456ac8c07c5a24f15f5d7d4867">append</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText, int32_t srcStart, int32_t srcLength)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Append the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>) to the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>.  <a href="#af7f9ab456ac8c07c5a24f15f5d7d4867"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a7030e96f6700e4877fe280b576b26e5b">append</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Append the characters in <code>srcText</code> to the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>.  <a href="#a7030e96f6700e4877fe280b576b26e5b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a6aceed0319029d2a606981840568821a">append</a> (const UChar *srcChars, int32_t srcStart, int32_t srcLength)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Append the characters in <code>srcChars</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>) to the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>.  <a href="#a6aceed0319029d2a606981840568821a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a8b8cd6ab8a7e406badf887291d26514c">append</a> (const UChar *srcChars, int32_t srcLength)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Append the characters in <code>srcChars</code> to the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>.  <a href="#a8b8cd6ab8a7e406badf887291d26514c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a0b81068905fd081b01b06c0094ef3ca9">append</a> (UChar srcChar)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Append the code unit <code>srcChar</code> to the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object.  <a href="#a0b81068905fd081b01b06c0094ef3ca9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a6c5d32e904ccac606dfc49afa4b35c17">append</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> srcChar)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Append the code point <code>srcChar</code> to the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object.  <a href="#a6c5d32e904ccac606dfc49afa4b35c17"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a179a24c3973d134ca3e160a5def2ad1e">insert</a> (int32_t start, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText, int32_t srcStart, int32_t srcLength)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Insert the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>) into the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>.  <a href="#a179a24c3973d134ca3e160a5def2ad1e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#aa44156212bb0ce6418ccbf1976fe126e">insert</a> (int32_t start, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Insert the characters in <code>srcText</code> into the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>.  <a href="#aa44156212bb0ce6418ccbf1976fe126e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#ac9388b206d00f8ca47d5dc417ef23211">insert</a> (int32_t start, const UChar *srcChars, int32_t srcStart, int32_t srcLength)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Insert the characters in <code>srcChars</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>) into the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>.  <a href="#ac9388b206d00f8ca47d5dc417ef23211"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a97683dc8790f9310cec85002422540ab">insert</a> (int32_t start, const UChar *srcChars, int32_t srcLength)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Insert the characters in <code>srcChars</code> into the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>.  <a href="#a97683dc8790f9310cec85002422540ab"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#aad4e081871687bb09edfde9ef87f6ef0">insert</a> (int32_t start, UChar srcChar)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Insert the code unit <code>srcChar</code> into the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>.  <a href="#aad4e081871687bb09edfde9ef87f6ef0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a59e54dc726e396baab496e0fb6467d51">insert</a> (int32_t start, <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> srcChar)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Insert the code point <code>srcChar</code> into the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>.  <a href="#a59e54dc726e396baab496e0fb6467d51"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a9a321102fc38bec175fa21b1f1aa2476">replace</a> (int32_t start, int32_t length, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText, int32_t srcStart, int32_t srcLength)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Replace the characters in the range [<code>start</code>, <code>start + length</code>) with the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>).  <a href="#a9a321102fc38bec175fa21b1f1aa2476"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a53f142e2db860dcb7d9544b01904eb8c">replace</a> (int32_t start, int32_t length, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Replace the characters in the range [<code>start</code>, <code>start + length</code>) with the characters in <code>srcText</code>.  <a href="#a53f142e2db860dcb7d9544b01904eb8c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a67b906be4fc94fe57feb34ab10355922">replace</a> (int32_t start, int32_t length, const UChar *srcChars, int32_t srcStart, int32_t srcLength)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Replace the characters in the range [<code>start</code>, <code>start + length</code>) with the characters in <code>srcChars</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>).  <a href="#a67b906be4fc94fe57feb34ab10355922"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a250f55bd8fbd8490852a0c90c5bcec4f">replace</a> (int32_t start, int32_t length, const UChar *srcChars, int32_t srcLength)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Replace the characters in the range [<code>start</code>, <code>start + length</code>) with the characters in <code>srcChars</code>.  <a href="#a250f55bd8fbd8490852a0c90c5bcec4f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#af048ddbf8ecdcb90105b90f50375209c">replace</a> (int32_t start, int32_t length, UChar srcChar)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Replace the characters in the range [<code>start</code>, <code>start + length</code>) with the code unit <code>srcChar</code>.  <a href="#af048ddbf8ecdcb90105b90f50375209c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#aa363771bfbdcb732ceccffbc2030b5ed">replace</a> (int32_t start, int32_t length, <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> srcChar)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Replace the characters in the range [<code>start</code>, <code>start + length</code>) with the code point <code>srcChar</code>.  <a href="#aa363771bfbdcb732ceccffbc2030b5ed"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a3e971aecee8c927be11601d022d3a2a4">replaceBetween</a> (int32_t start, int32_t limit, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Replace the characters in the range [<code>start</code>, <code>limit</code>) with the characters in <code>srcText</code>.  <a href="#a3e971aecee8c927be11601d022d3a2a4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a8cb0ad3a526ebb049c25fc541bac2543">replaceBetween</a> (int32_t start, int32_t limit, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;srcText, int32_t srcStart, int32_t srcLimit)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Replace the characters in the range [<code>start</code>, <code>limit</code>) with the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcLimit</code>).  <a href="#a8cb0ad3a526ebb049c25fc541bac2543"></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="classUnicodeString.html#a1050a1af8098db0ef879f2415ba41e82">handleReplaceBetween</a> (int32_t start, int32_t limit, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;text)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Replace a substring of this object with the given text.  <a href="#a1050a1af8098db0ef879f2415ba41e82"></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="classUnicodeString.html#ab06c04a1ff38184310bef13b859eb7c1">hasMetaData</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="classReplaceable.html" title="Replaceable is an abstract base class representing a string of characters that supports...">Replaceable</a> API.  <a href="#ab06c04a1ff38184310bef13b859eb7c1"></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="classUnicodeString.html#a7a3e488399929c744e89a1e041988ec5">copy</a> (int32_t start, int32_t limit, int32_t dest)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy a substring of this object, retaining attribute (out-of-band) information.  <a href="#a7a3e488399929c744e89a1e041988ec5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a332cce292be22e3bc76a53f17c4ad6ff">findAndReplace</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;oldText, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;newText)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Replace all occurrences of characters in oldText with the characters in newText.  <a href="#a332cce292be22e3bc76a53f17c4ad6ff"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#ae3ed2d6a16b461c531ad1a3f0bc66c91">findAndReplace</a> (int32_t start, int32_t length, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;oldText, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;newText)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Replace all occurrences of characters in oldText with characters in newText in the range [<code>start</code>, <code>start + length</code>).  <a href="#ae3ed2d6a16b461c531ad1a3f0bc66c91"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a555e3d6d31bb6fbfac2236bc94806700">findAndReplace</a> (int32_t start, int32_t length, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;oldText, int32_t oldStart, int32_t oldLength, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;newText, int32_t newStart, int32_t newLength)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Replace all occurrences of characters in oldText in the range [<code>oldStart</code>, <code>oldStart + oldLength</code>) with the characters in newText in the range [<code>newStart</code>, <code>newStart + newLength</code>) in the range [<code>start</code>, <code>start + length</code>).  <a href="#a555e3d6d31bb6fbfac2236bc94806700"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#aee0fec9568ee616e330627bf371eda8d">remove</a> (void)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove all characters from the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object.  <a href="#aee0fec9568ee616e330627bf371eda8d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#ab54182e0d304a37c883d8c74df6139df">remove</a> (int32_t start, int32_t length=(int32_t) INT32_MAX)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove the characters in the range [<code>start</code>, <code>start + length</code>) from the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object.  <a href="#ab54182e0d304a37c883d8c74df6139df"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a6a901da92dd8e9bc1e1f168033175240">removeBetween</a> (int32_t start, int32_t limit=(int32_t) INT32_MAX)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove the characters in the range [<code>start</code>, <code>limit</code>) from the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object.  <a href="#a6a901da92dd8e9bc1e1f168033175240"></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="classUnicodeString.html#aedf7e46ed1d04c290e7a07f995fcab93">padLeading</a> (int32_t targetLength, UChar padChar=0x0020)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pad the start of this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> with the character <code>padChar</code>.  <a href="#aedf7e46ed1d04c290e7a07f995fcab93"></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="classUnicodeString.html#af7c61d0795c4d70b37dc6388fdd30c60">padTrailing</a> (int32_t targetLength, UChar padChar=0x0020)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pad the end of this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> with the character <code>padChar</code>.  <a href="#af7c61d0795c4d70b37dc6388fdd30c60"></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="classUnicodeString.html#ad8fe3cabef409468a11b77111de45ebc">truncate</a> (int32_t targetLength)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Truncate this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> to the <code>targetLength</code>.  <a href="#ad8fe3cabef409468a11b77111de45ebc"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a78ae20a1d15288a594904fe02c45488c">trim</a> (void)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Trims leading and trailing whitespace from this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>.  <a href="#a78ae20a1d15288a594904fe02c45488c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#ab1c93f89741c3307063dda2ab183ad9d">reverse</a> (void)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reverse this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> in place.  <a href="#ab1c93f89741c3307063dda2ab183ad9d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#afbc7e70810c42b8c5d28606124826b3f">reverse</a> (int32_t start, int32_t length)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reverse the range [<code>start</code>, <code>start + length</code>) in this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>.  <a href="#afbc7e70810c42b8c5d28606124826b3f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#aad9e8e68e89dc947b864a4d37e310ffb">toUpper</a> (void)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Convert the characters in this to UPPER CASE following the conventions of the default locale.  <a href="#aad9e8e68e89dc947b864a4d37e310ffb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a6cd407c4270e6618153c6a3c6e499ec7">toUpper</a> (const <a class="el" href="classLocale.html">Locale</a> &amp;locale)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Convert the characters in this to UPPER CASE following the conventions of a specific locale.  <a href="#a6cd407c4270e6618153c6a3c6e499ec7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a6276e2a7136f47e0294f6b672d9bfe02">toLower</a> (void)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Convert the characters in this to lower case following the conventions of the default locale.  <a href="#a6276e2a7136f47e0294f6b672d9bfe02"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a78a44158dd8df940d4e61e75d5b64efe">toLower</a> (const <a class="el" href="classLocale.html">Locale</a> &amp;locale)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Convert the characters in this to lower case following the conventions of a specific locale.  <a href="#a78a44158dd8df940d4e61e75d5b64efe"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a76491929251438d4aa982c8f4c1bebfa">toTitle</a> (<a class="el" href="classBreakIterator.html">BreakIterator</a> *titleIter)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Titlecase this string, convenience function using the default locale.  <a href="#a76491929251438d4aa982c8f4c1bebfa"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#acc99199208fb911188d4dc74e6284ed3">toTitle</a> (<a class="el" href="classBreakIterator.html">BreakIterator</a> *titleIter, const <a class="el" href="classLocale.html">Locale</a> &amp;locale)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Titlecase this string.  <a href="#acc99199208fb911188d4dc74e6284ed3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#ae0d8785af9aafd3da545f580b7bac06b">toTitle</a> (<a class="el" href="classBreakIterator.html">BreakIterator</a> *titleIter, const <a class="el" href="classLocale.html">Locale</a> &amp;locale, uint32_t options)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Titlecase this string, with options.  <a href="#ae0d8785af9aafd3da545f580b7bac06b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a5c05b9f91b3ffadea68bf3f655e6bd70">foldCase</a> (uint32_t options=0)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Case-fold the characters in this string.  <a href="#a5c05b9f91b3ffadea68bf3f655e6bd70"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">UChar *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#ab60ed4d07f726d3cceb3964c6556a34b">getBuffer</a> (int32_t minCapacity)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a read/write pointer to the internal buffer.  <a href="#ab60ed4d07f726d3cceb3964c6556a34b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#aa38976ed70bda538598da31a4631387d">releaseBuffer</a> (int32_t newLength=-1)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Release a read/write buffer on a <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object with an "open" getBuffer(minCapacity).  <a href="#aa38976ed70bda538598da31a4631387d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const UChar *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a34eda92a2c60797052116eb7acada1dc">getBuffer</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a read-only pointer to the internal buffer.  <a href="#a34eda92a2c60797052116eb7acada1dc"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const UChar *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a8aecf2249fdb51e284270a6f31e2cd75">getTerminatedBuffer</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a read-only pointer to the internal buffer, making sure that it is NUL-terminated.  <a href="#a8aecf2249fdb51e284270a6f31e2cd75"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a0104e7a1ca98d59c902a7220dd12fc3d">UnicodeString</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct an empty <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>.  <a href="#a0104e7a1ca98d59c902a7220dd12fc3d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a09393734cea2d2254424e13fc2a10159">UnicodeString</a> (int32_t capacity, <a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c, int32_t count)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct a <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> with capacity to hold <code>capacity</code> UChars.  <a href="#a09393734cea2d2254424e13fc2a10159"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#af5b8a4728bca17ec3307934b2a770135">UnicodeString</a> (UChar ch)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Single UChar (code unit) constructor.  <a href="#af5b8a4728bca17ec3307934b2a770135"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a3169a0f66593fbe82d6f7322a746ce4b">UnicodeString</a> (<a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> ch)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Single UChar32 (code point) constructor.  <a href="#a3169a0f66593fbe82d6f7322a746ce4b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#aa9e8f6c8b81a2a16b99a706c1ebbf018">UnicodeString</a> (const UChar *text)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">UChar* constructor.  <a href="#aa9e8f6c8b81a2a16b99a706c1ebbf018"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a37d5560f5f05e53143da7765ecd9aff0">UnicodeString</a> (const UChar *text, int32_t textLength)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">UChar* constructor.  <a href="#a37d5560f5f05e53143da7765ecd9aff0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a245c035b531688e0f9fda3471583b53c">UnicodeString</a> (<a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> isTerminated, const UChar *text, int32_t textLength)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Readonly-aliasing UChar* constructor.  <a href="#a245c035b531688e0f9fda3471583b53c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#afaf01b0f383547f3ce9d5bf52f14b6a3">UnicodeString</a> (UChar *buffer, int32_t buffLength, int32_t buffCapacity)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Writable-aliasing UChar* constructor.  <a href="#afaf01b0f383547f3ce9d5bf52f14b6a3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a3cb3a8d3adc74b4fcd5673eee7cbfa65">UnicodeString</a> (const char *codepageData, const char *codepage=0)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">char* constructor.  <a href="#a3cb3a8d3adc74b4fcd5673eee7cbfa65"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#ae6be0c79c56a3a54599f68329bdbb930">UnicodeString</a> (const char *codepageData, int32_t dataLength, const char *codepage=0)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">char* constructor.  <a href="#ae6be0c79c56a3a54599f68329bdbb930"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a491cb83c13f87e8782cb06603fd47916">UnicodeString</a> (const char *src, int32_t srcLength, <a class="el" href="ucnv__err_8h.html#a0c2dcfbf71ad577f5285869e1ceb26b1">UConverter</a> *cnv, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;errorCode)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">char * / UConverter constructor.  <a href="#a491cb83c13f87e8782cb06603fd47916"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a935b1e53aa8fecadf71ccc6330a017d7">UnicodeString</a> (const char *src, int32_t length, enum <a class="el" href="classUnicodeString.html#a7ffe265551a9bf6ea0e4c0cb508cea8a">EInvariant</a> inv)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructs a Unicode string from an invariant-character char * string.  <a href="#a935b1e53aa8fecadf71ccc6330a017d7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a41a60bb597c7cb06e06a0dcc6fe22739">UnicodeString</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;that)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy constructor.  <a href="#a41a60bb597c7cb06e06a0dcc6fe22739"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a95539163e8515bd2c057402dbf77f710">UnicodeString</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;src, int32_t srcStart)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">'Substring' constructor from tail of source string.  <a href="#a95539163e8515bd2c057402dbf77f710"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#af9ffc31e0faedb3624e00f42d5a24405">UnicodeString</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;src, int32_t srcStart, int32_t srcLength)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">'Substring' constructor from subrange of source string.  <a href="#af9ffc31e0faedb3624e00f42d5a24405"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classReplaceable.html">Replaceable</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a6cf9e8332f251ddfb5758bcada18ea9e">clone</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clone this object, an instance of a subclass of <a class="el" href="classReplaceable.html" title="Replaceable is an abstract base class representing a string of characters that supports...">Replaceable</a>.  <a href="#a6cf9e8332f251ddfb5758bcada18ea9e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a6157b88fc525404dfc62eb2c33654e3c">~UnicodeString</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor.  <a href="#a6157b88fc525404dfc62eb2c33654e3c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classUnicodeString.html">UnicodeString</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#abb3f5f6eb82c5689fcfeb8f79d5ca2bf">unescape</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unescape a string of characters and return a string containing the result.  <a href="#abb3f5f6eb82c5689fcfeb8f79d5ca2bf"></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="classUnicodeString.html#af94aa1c7dafa0c151bf0fcbe32d69ded">unescapeAt</a> (int32_t &amp;offset) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unescape a single escape sequence and return the represented character.  <a href="#af94aa1c7dafa0c151bf0fcbe32d69ded"></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="classUnicodeString.html#ad92f0af01d4479b4c48807275005c002">getDynamicClassID</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">ICU "poor man's RTTI", returns a UClassID for the actual class.  <a href="#ad92f0af01d4479b4c48807275005c002"></a><br/></td></tr>
<tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="utypes_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a984ec401cdede332f72aed099bd7e68f">getStaticClassID</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">ICU "poor man's RTTI", returns a UClassID for this class.  <a href="#a984ec401cdede332f72aed099bd7e68f"></a><br/></td></tr>
<tr><td colspan="2"><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual int32_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a362a1368137278f56f464aa0199a8117">getLength</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Implement <a class="el" href="classReplaceable.html#aaa70d54cdfecf5e6a0a86566c8f75809" title="Virtual version of length().">Replaceable::getLength()</a> (see jitterbug 1027).  <a href="#a362a1368137278f56f464aa0199a8117"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual UChar&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html#a78317735bb5f7261750e90eeb39f1f40">getCharAt</a> (int32_t offset) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The change in <a class="el" href="classReplaceable.html" title="Replaceable is an abstract base class representing a string of characters that supports...">Replaceable</a> to use virtual <a class="el" href="classUnicodeString.html#a78317735bb5f7261750e90eeb39f1f40" title="The change in Replaceable to use virtual getCharAt() allows UnicodeString::charAt()...">getCharAt()</a> allows <a class="el" href="classUnicodeString.html#ae3ffb6e15396dff152cb459ce4008f90" title="Return the code unit at offset offset.">UnicodeString::charAt()</a> to be inline again (see jitterbug 709).  <a href="#a78317735bb5f7261750e90eeb39f1f40"></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="classUnicodeString.html#a5b71c5fb6542921ad247f95c87dc00cf">getChar32At</a> (int32_t offset) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The change in <a class="el" href="classReplaceable.html" title="Replaceable is an abstract base class representing a string of characters that supports...">Replaceable</a> to use virtual <a class="el" href="classUnicodeString.html#a5b71c5fb6542921ad247f95c87dc00cf" title="The change in Replaceable to use virtual getChar32At() allows UnicodeString::char32At()...">getChar32At()</a> allows <a class="el" href="classUnicodeString.html#a9ca80740ef5199cf1809c66a4ef6ba3d" title="Return the code point that contains the code unit at offset offset.">UnicodeString::char32At()</a> to be inline again (see jitterbug 709).  <a href="#a5b71c5fb6542921ad247f95c87dc00cf"></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="a89f2a3ff805b9f3c26e966c5299b1675"></a><!-- doxytag: member="UnicodeString::StringThreadTest" ref="a89f2a3ff805b9f3c26e966c5299b1675" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><b>StringThreadTest</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab34f543433807ca0325d80c650c86a33"></a><!-- doxytag: member="UnicodeString::StackBufferOrFields" ref="ab34f543433807ca0325d80c650c86a33" args="" -->
union&nbsp;</td><td class="memItemRight" valign="bottom"><b>StackBufferOrFields</b></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p><a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> is a string class that stores Unicode characters directly and provides similar functionality as the Java String and StringBuffer classes. </p>
<p>It is a concrete implementation of the abstract class <a class="el" href="classReplaceable.html" title="Replaceable is an abstract base class representing a string of characters that supports...">Replaceable</a> (for transliteration).</p>
<p>The <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> class is not suitable for subclassing.</p>
<p>For an overview of Unicode strings in C and C++ see the <a href="http://icu-project.org/userguide/strings.html">User Guide Strings chapter</a>.</p>
<p>In ICU, a Unicode string consists of 16-bit Unicode <em>code units</em>. A Unicode character may be stored with either one code unit (the most common case) or with a matched pair of special code units ("surrogates"). The data type for code units is UChar. For single-character handling, a Unicode character code <em>point</em> is a value in the range 0..0x10ffff. ICU uses the UChar32 type for code points.</p>
<p>Indexes and offsets into and lengths of strings always count code units, not code points. This is the same as with multi-byte char* strings in traditional string handling. Operations on partial strings typically do not test for code point boundaries. If necessary, the user needs to take care of such boundaries by testing for the code unit values or by using functions like <a class="el" href="classUnicodeString.html#a121c8e74fb409a9b2e3a503f965f75f1" title="Adjust a random-access offset so that it points to the beginning of a Unicode character...">UnicodeString::getChar32Start()</a> and <a class="el" href="classUnicodeString.html#a20f1e4c661d0fc07c800ad8b4ec37587" title="Adjust a random-access offset so that it points behind a Unicode character.">UnicodeString::getChar32Limit()</a> (or, in C, the equivalent macros <a class="el" href="utf16_8h.html#a31c914801f71204ee90caa6c4d0c3c1b" title="Adjust a random-access offset to a code point boundary at the start of a code point...">U16_SET_CP_START()</a> and <a class="el" href="utf16_8h.html#a3d5ff64af4bf16cbf9a830743a5c74a4" title="Adjust a random-access offset to a code point boundary after a code point.">U16_SET_CP_LIMIT()</a>, see <a class="el" href="utf_8h.html" title="C API: Code point macros.">utf.h</a>).</p>
<p><a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> methods are more lenient with regard to input parameter values than other ICU APIs. In particular:</p>
<ul>
<li>If indexes are out of bounds for a <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object (&lt;0 or &gt;<a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a>) then they are "pinned" to the nearest boundary.</li>
<li>If primitive string pointer values (e.g., const UChar * or char *) for input strings are NULL, then those input string parameters are treated as if they pointed to an empty string. However, this is <em>not</em> the case for char * parameters for charset names or other IDs.</li>
<li>Most <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</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="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> into a "bogus" state (see <a class="el" href="classUnicodeString.html#af61191bafca3f7ed295a9eba2a1eb401" title="Determine if this object contains a valid string.">isBogus()</a>) if an error occurs.</li>
</ul>
<p>In string comparisons, two <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> objects that are both "bogus" compare equal (to be transitive and prevent endless loops in sorting), and a "bogus" string compares less than any non-"bogus" one.</p>
<p>Const <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> methods are thread-safe. Multiple threads can use const methods on the same <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object simultaneously, but non-const methods must not be called concurrently (in multiple threads) with any other (const or non-const) methods.</p>
<p>Similarly, const <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> &amp; parameters are thread-safe. One object may be passed in as such a parameter concurrently in multiple threads. This includes the const <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> &amp; parameters for copy construction, assignment, and cloning.</p>
<p><a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> uses several storage methods. String contents can be stored inside the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object itself, in an allocated and shared buffer, or in an outside buffer that is "aliased". Most of this is done transparently, but careful aliasing in particular provides significant performance improvements. Also, the internal buffer is accessible via special functions. For details see the <a href="http://icu-project.org/userguide/strings.html">User Guide Strings chapter</a>.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="utf_8h.html" title="C API: Code point macros.">utf.h</a> </dd>
<dd>
<a class="el" href="classCharacterIterator.html" title="Abstract class that defines an API for iteration on text objects.">CharacterIterator</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001356">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l00183">183</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>
<hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="a7ffe265551a9bf6ea0e4c0cb508cea8a"></a><!-- doxytag: member="UnicodeString::EInvariant" ref="a7ffe265551a9bf6ea0e4c0cb508cea8a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classUnicodeString.html#a7ffe265551a9bf6ea0e4c0cb508cea8a">UnicodeString::EInvariant</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constant to be used in the UnicodeString(char *, int32_t, EInvariant) constructor which constructs a Unicode string from an invariant-character char * string. </p>
<p>Use the macro US_INV instead of the full qualification for this value.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="unistr_8h.html#a308c066384b8560030fb3482bcb13381" title="Constant to be used in the UnicodeString(char *, int32_t, EInvariant) constructor...">US_INV</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001358">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="a7ffe265551a9bf6ea0e4c0cb508cea8aaf60977cf9e4fde77211e7828f0d2ec5b"></a><!-- doxytag: member="kInvariant" ref="a7ffe265551a9bf6ea0e4c0cb508cea8aaf60977cf9e4fde77211e7828f0d2ec5b" args="" -->kInvariant</em>&nbsp;</td><td>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeString.html#a7ffe265551a9bf6ea0e4c0cb508cea8a" title="Constant to be used in the UnicodeString(char *, int32_t, EInvariant) constructor...">EInvariant</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001530">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>
</td></tr>
</table>
</dd>
</dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l00195">195</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

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

<p>Construct an empty <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001506">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a09393734cea2d2254424e13fc2a10159"></a><!-- doxytag: member="UnicodeString::UnicodeString" ref="a09393734cea2d2254424e13fc2a10159" args="(int32_t capacity, UChar32 c, int32_t count)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UnicodeString::UnicodeString </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>capacity</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>c</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>count</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Construct a <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> with capacity to hold <code>capacity</code> UChars. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>capacity</em>&nbsp;</td><td>the number of UChars this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> should hold before a resize is necessary; if count is greater than 0 and count code points c take up more space than capacity, then capacity is adjusted accordingly. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>is used to initially fill the string </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>count</em>&nbsp;</td><td>specifies how many code points c are to be written in the string </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001507">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="af5b8a4728bca17ec3307934b2a770135"></a><!-- doxytag: member="UnicodeString::UnicodeString" ref="af5b8a4728bca17ec3307934b2a770135" args="(UChar ch)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UnicodeString::UnicodeString </td>
          <td>(</td>
          <td class="paramtype">UChar&nbsp;</td>
          <td class="paramname"> <em>ch</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Single UChar (code unit) constructor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ch</em>&nbsp;</td><td>the character to place in the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001508">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

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

<p>Single UChar32 (code point) constructor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ch</em>&nbsp;</td><td>the character to place in the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001509">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="aa9e8f6c8b81a2a16b99a706c1ebbf018"></a><!-- doxytag: member="UnicodeString::UnicodeString" ref="aa9e8f6c8b81a2a16b99a706c1ebbf018" args="(const UChar *text)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UnicodeString::UnicodeString </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>text</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>UChar* constructor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>The characters to place in the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>. <code>text</code> must be NULL (U+0000) terminated. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001510">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a37d5560f5f05e53143da7765ecd9aff0"></a><!-- doxytag: member="UnicodeString::UnicodeString" ref="a37d5560f5f05e53143da7765ecd9aff0" args="(const UChar *text, int32_t textLength)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UnicodeString::UnicodeString </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>text</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>textLength</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>UChar* constructor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>The characters to place in the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>textLength</em>&nbsp;</td><td>The number of Unicode characters in <code>text</code> to copy. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001511">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a245c035b531688e0f9fda3471583b53c"></a><!-- doxytag: member="UnicodeString::UnicodeString" ref="a245c035b531688e0f9fda3471583b53c" args="(UBool isTerminated, const UChar *text, int32_t textLength)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UnicodeString::UnicodeString </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td>
          <td class="paramname"> <em>isTerminated</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>text</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>textLength</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Readonly-aliasing UChar* constructor. </p>
<p>The text will be used for the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object, but it will not be released when the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> is destroyed. This has copy-on-write semantics: When the string is modified, then the buffer is first copied into newly allocated memory. The aliased buffer is never modified. In an assignment to another <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>, the text will be aliased again, so that both strings then alias the same readonly-text.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>isTerminated</em>&nbsp;</td><td>specifies if <code>text</code> is <code>NUL</code>-terminated. This must be true if <code>textLength==-1</code>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>The characters to alias for the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>textLength</em>&nbsp;</td><td>The number of Unicode characters in <code>text</code> to alias. If -1, then this constructor will determine the length by calling <code><a class="el" href="group__ustring__ustrlen.html#gac4d8a5581fc5bde71d62ebd0a7a84ec5" title="Determine the length of an array of UChar.">u_strlen()</a></code>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001512">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="afaf01b0f383547f3ce9d5bf52f14b6a3"></a><!-- doxytag: member="UnicodeString::UnicodeString" ref="afaf01b0f383547f3ce9d5bf52f14b6a3" args="(UChar *buffer, int32_t buffLength, int32_t buffCapacity)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UnicodeString::UnicodeString </td>
          <td>(</td>
          <td class="paramtype">UChar *&nbsp;</td>
          <td class="paramname"> <em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>buffLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>buffCapacity</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Writable-aliasing UChar* constructor. </p>
<p>The text will be used for the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object, but it will not be released when the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> is destroyed. This has write-through semantics: For as long as the capacity of the buffer is sufficient, write operations will directly affect the buffer. When more capacity is necessary, then a new buffer will be allocated and the contents copied as with regularly constructed strings. In an assignment to another <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>, the buffer will be copied. The extract(UChar *dst) function detects whether the dst pointer is the same as the string buffer itself and will in this case not copy the contents.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>The characters to alias for the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buffLength</em>&nbsp;</td><td>The number of Unicode characters in <code>buffer</code> to alias. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buffCapacity</em>&nbsp;</td><td>The size of <code>buffer</code> in UChars. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001513">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a3cb3a8d3adc74b4fcd5673eee7cbfa65"></a><!-- doxytag: member="UnicodeString::UnicodeString" ref="a3cb3a8d3adc74b4fcd5673eee7cbfa65" args="(const char *codepageData, const char *codepage=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UnicodeString::UnicodeString </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>codepageData</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>codepage</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>char* constructor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>codepageData</em>&nbsp;</td><td>an array of bytes, null-terminated </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>codepage</em>&nbsp;</td><td>the encoding of <code>codepageData</code>. The special value 0 for <code>codepage</code> indicates that the text is in the platform's default codepage.</td></tr>
  </table>
  </dd>
</dl>
<p>If <code>codepage</code> is an empty string (<code>""</code>), then a simple conversion is performed on the codepage-invariant subset ("invariant characters") of the platform encoding. See <a class="el" href="utypes_8h.html" title="Basic definitions for ICU, for both C and C++ APIs.">utypes.h</a>. Recommendation: For invariant-character strings use the constructor <a class="el" href="classUnicodeString.html#a935b1e53aa8fecadf71ccc6330a017d7" title="Constructs a Unicode string from an invariant-character char * string.">UnicodeString(const char *src, int32_t length, enum EInvariant inv)</a> because it avoids object code dependencies of <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> on the conversion code.</p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001514">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="ae6be0c79c56a3a54599f68329bdbb930"></a><!-- doxytag: member="UnicodeString::UnicodeString" ref="ae6be0c79c56a3a54599f68329bdbb930" args="(const char *codepageData, int32_t dataLength, const char *codepage=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UnicodeString::UnicodeString </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>codepageData</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>dataLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>codepage</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>char* constructor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>codepageData</em>&nbsp;</td><td>an array of bytes. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dataLength</em>&nbsp;</td><td>The number of bytes in <code>codepageData</code>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>codepage</em>&nbsp;</td><td>the encoding of <code>codepageData</code>. The special value 0 for <code>codepage</code> indicates that the text is in the platform's default codepage. If <code>codepage</code> is an empty string (<code>""</code>), then a simple conversion is performed on the codepage-invariant subset ("invariant characters") of the platform encoding. See <a class="el" href="utypes_8h.html" title="Basic definitions for ICU, for both C and C++ APIs.">utypes.h</a>. Recommendation: For invariant-character strings use the constructor <a class="el" href="classUnicodeString.html#a935b1e53aa8fecadf71ccc6330a017d7" title="Constructs a Unicode string from an invariant-character char * string.">UnicodeString(const char *src, int32_t length, enum EInvariant inv)</a> because it avoids object code dependencies of <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> on the conversion code.</td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001515">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a491cb83c13f87e8782cb06603fd47916"></a><!-- doxytag: member="UnicodeString::UnicodeString" ref="a491cb83c13f87e8782cb06603fd47916" args="(const char *src, int32_t srcLength, UConverter *cnv, UErrorCode &amp;errorCode)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UnicodeString::UnicodeString </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>src</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="ucnv__err_8h.html#a0c2dcfbf71ad577f5285869e1ceb26b1">UConverter</a> *&nbsp;</td>
          <td class="paramname"> <em>cnv</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>errorCode</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>char * / UConverter constructor. </p>
<p>This constructor uses an existing UConverter object to convert the codepage string to Unicode and construct a <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> from that.</p>
<p>The converter is reset at first. If the error code indicates a failure before this constructor is called, or if an error occurs during conversion or construction, then the string will be bogus.</p>
<p>This function avoids the overhead of opening and closing a converter if multiple strings are constructed.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>src</em>&nbsp;</td><td>input codepage string </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>length of the input string, can be -1 for NUL-terminated strings </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>cnv</em>&nbsp;</td><td>converter object (<a class="el" href="ucnv_8h.html#a8711b61a6cd41d84cf522042b3aebaed" title="Resets the to-Unicode part of a converter state to the default state.">ucnv_resetToUnicode()</a> will be called), can be NULL for the default converter </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>errorCode</em>&nbsp;</td><td>normal ICU error code </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001516">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a935b1e53aa8fecadf71ccc6330a017d7"></a><!-- doxytag: member="UnicodeString::UnicodeString" ref="a935b1e53aa8fecadf71ccc6330a017d7" args="(const char *src, int32_t length, enum EInvariant inv)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UnicodeString::UnicodeString </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>src</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">enum <a class="el" href="classUnicodeString.html#a7ffe265551a9bf6ea0e4c0cb508cea8a">EInvariant</a>&nbsp;</td>
          <td class="paramname"> <em>inv</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 Unicode string from an invariant-character char * string. </p>
<p>About invariant characters see <a class="el" href="utypes_8h.html" title="Basic definitions for ICU, for both C and C++ APIs.">utypes.h</a>. This constructor has no runtime dependency on conversion code and is therefore recommended over ones taking a charset name string (where the empty string "" indicates invariant-character conversion).</p>
<p>Use the macro US_INV as the third, signature-distinguishing parameter.</p>
<p>For example: </p>
<div class="fragment"><pre class="fragment"> <span class="keywordtype">void</span> fn(<span class="keyword">const</span> <span class="keywordtype">char</span> *s) {
   <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> ustr(s, -1, <a class="code" href="unistr_8h.html#a308c066384b8560030fb3482bcb13381" title="Constant to be used in the UnicodeString(char *, int32_t, EInvariant) constructor...">US_INV</a>);
   <span class="comment">// use ustr ...</span>
 }
</pre></div><dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>src</em>&nbsp;</td><td>String using only invariant characters. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>Length of src, or -1 if NUL-terminated. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>inv</em>&nbsp;</td><td>Signature-distinguishing paramater, use US_INV.</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="unistr_8h.html#a308c066384b8560030fb3482bcb13381" title="Constant to be used in the UnicodeString(char *, int32_t, EInvariant) constructor...">US_INV</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001517">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

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

<p>Copy constructor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>that</em>&nbsp;</td><td>The <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object to copy. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001518">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a95539163e8515bd2c057402dbf77f710"></a><!-- doxytag: member="UnicodeString::UnicodeString" ref="a95539163e8515bd2c057402dbf77f710" args="(const UnicodeString &amp;src, int32_t srcStart)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UnicodeString::UnicodeString </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>src</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>'Substring' constructor from tail of source 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>src</em>&nbsp;</td><td>The <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object to copy. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>The offset into <code>src</code> at which to start copying. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001519">Stable:</a></b></dt><dd>ICU 2.2 </dd></dl>

</div>
</div>
<a class="anchor" id="af9ffc31e0faedb3624e00f42d5a24405"></a><!-- doxytag: member="UnicodeString::UnicodeString" ref="af9ffc31e0faedb3624e00f42d5a24405" args="(const UnicodeString &amp;src, int32_t srcStart, int32_t srcLength)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UnicodeString::UnicodeString </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>src</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>'Substring' constructor from subrange of source 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>src</em>&nbsp;</td><td>The <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object to copy. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>The offset into <code>src</code> at which to start copying. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>The number of characters from <code>src</code> to copy. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001520">Stable:</a></b></dt><dd>ICU 2.2 </dd></dl>

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

<p>Destructor. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001522">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a6c5d32e904ccac606dfc49afa4b35c17"></a><!-- doxytag: member="UnicodeString::append" ref="a6c5d32e904ccac606dfc49afa4b35c17" args="(UChar32 srcChar)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::append </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>srcChar</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Append the code point <code>srcChar</code> to the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>srcChar</em>&nbsp;</td><td>the code point to append </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#_stable001464">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04119">4119</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="umachine_8h_source.html#l00202">FALSE</a>, <a class="el" href="unistr_8h_source.html#l03310">length()</a>, <a class="el" href="utf16_8h_source.html#l00302">U16_APPEND</a>, and <a class="el" href="utf16_8h_source.html#l00138">U16_MAX_LENGTH</a>.</p>

</div>
</div>
<a class="anchor" id="a0b81068905fd081b01b06c0094ef3ca9"></a><!-- doxytag: member="UnicodeString::append" ref="a0b81068905fd081b01b06c0094ef3ca9" args="(UChar srcChar)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::append </td>
          <td>(</td>
          <td class="paramtype">UChar&nbsp;</td>
          <td class="paramname"> <em>srcChar</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Append the code unit <code>srcChar</code> to the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>srcChar</em>&nbsp;</td><td>the code unit to append </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#_stable001463">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04115">4115</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a8b8cd6ab8a7e406badf887291d26514c"></a><!-- doxytag: member="UnicodeString::append" ref="a8b8cd6ab8a7e406badf887291d26514c" args="(const UChar *srcChars, int32_t srcLength)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::append </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Append the characters in <code>srcChars</code> to the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>. </p>
<p><code>srcChars</code> is not 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>srcChars</em>&nbsp;</td><td>the source for the new characters </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of Unicode characters in <code>srcChars</code> </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#_stable001462">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04110">4110</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a6aceed0319029d2a606981840568821a"></a><!-- doxytag: member="UnicodeString::append" ref="a6aceed0319029d2a606981840568821a" args="(const UChar *srcChars, int32_t srcStart, int32_t srcLength)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::append </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Append the characters in <code>srcChars</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>) to the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>. </p>
<p><code>srcChars</code> is not 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>srcChars</em>&nbsp;</td><td>the source for the new characters </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcChars</code> where new characters will be obtained </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcChars</code> in the append string </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#_stable001461">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04104">4104</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

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

<p>Append the characters in <code>srcText</code> to the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>. </p>
<p><code>srcText</code> is not 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>srcText</em>&nbsp;</td><td>the source for the new characters </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#_stable001460">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04100">4100</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="af7f9ab456ac8c07c5a24f15f5d7d4867"></a><!-- doxytag: member="UnicodeString::append" ref="af7f9ab456ac8c07c5a24f15f5d7d4867" args="(const UnicodeString &amp;srcText, int32_t srcStart, int32_t srcLength)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::append </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>srcText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Append the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>) to the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>. </p>
<p><code>srcText</code> is not 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>srcText</em>&nbsp;</td><td>the source for the new characters </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcText</code> where new characters will be obtained </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcText</code> in the append string </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#_stable001459">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04094">4094</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

<p>Referenced by <a class="el" href="unistr_8h_source.html#l04132">operator+=()</a>, and <a class="el" href="translit_8h_source.html#l01300">Transliterator::setID()</a>.</p>

</div>
</div>
<a class="anchor" id="a949a065b923a5da215c6e35aea741e03"></a><!-- doxytag: member="UnicodeString::caseCompare" ref="a949a065b923a5da215c6e35aea741e03" args="(int32_t start, int32_t length, const UChar *srcChars, int32_t srcStart, int32_t srcLength, uint32_t options) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::caseCompare </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>options</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>Compare two strings case-insensitively using full case folding. </p>
<p>This is equivalent to this-&gt;foldCase(options).compare(srcChars.foldCase(options)).</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>The start offset in this string at which the compare operation begins. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>The number of code units from this string to compare. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcChars</em>&nbsp;</td><td>A pointer to another string to compare this one to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>The start offset in that string at which the compare operation begins. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>The number of code units from that string to compare. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td>A bit set of options:</p>
<ul>
<li>U_FOLD_CASE_DEFAULT or 0 is used for default options: Comparison in code unit order with default case folding.</li>
</ul>
</td></tr>
  </table>
  </dd>
</dl>
<ul>
<li>U_COMPARE_CODE_POINT_ORDER Set to choose code point order instead of code unit order (see u_strCompare for details).</li>
</ul>
<ul>
<li>U_FOLD_CASE_EXCLUDE_SPECIAL_I</li>
</ul>
<dl class="return"><dt><b>Returns:</b></dt><dd>A negative, zero, or positive integer indicating the comparison result. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001384">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03562">3562</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="a4f970386c68b335bd5a953c990437eb2"></a><!-- doxytag: member="UnicodeString::caseCompare" ref="a4f970386c68b335bd5a953c990437eb2" args="(int32_t start, int32_t length, const UChar *srcChars, uint32_t options) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::caseCompare </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>options</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>Compare two strings case-insensitively using full case folding. </p>
<p>This is equivalent to this-&gt;foldCase(options).compare(srcChars.foldCase(options)).</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>The start offset in this string at which the compare operation begins. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>The number of code units from this string to compare. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcChars</em>&nbsp;</td><td>A pointer to another string to compare this one to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td>A bit set of options:</p>
<ul>
<li>U_FOLD_CASE_DEFAULT or 0 is used for default options: Comparison in code unit order with default case folding.</li>
</ul>
</td></tr>
  </table>
  </dd>
</dl>
<ul>
<li>U_COMPARE_CODE_POINT_ORDER Set to choose code point order instead of code unit order (see u_strCompare for details).</li>
</ul>
<ul>
<li>U_FOLD_CASE_EXCLUDE_SPECIAL_I</li>
</ul>
<dl class="return"><dt><b>Returns:</b></dt><dd>A negative, zero, or positive integer indicating the comparison result. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001383">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03554">3554</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa86524e659199fa9a3d0c6d8e4c89f2d"></a><!-- doxytag: member="UnicodeString::caseCompare" ref="aa86524e659199fa9a3d0c6d8e4c89f2d" args="(const UChar *srcChars, int32_t srcLength, uint32_t options) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::caseCompare </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>options</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>Compare two strings case-insensitively using full case folding. </p>
<p>This is equivalent to this-&gt;foldCase(options).compare(srcChars.foldCase(options)).</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>srcChars</em>&nbsp;</td><td>A pointer to another string to compare this one to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>The number of code units from that string to compare. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td>A bit set of options:</p>
<ul>
<li>U_FOLD_CASE_DEFAULT or 0 is used for default options: Comparison in code unit order with default case folding.</li>
</ul>
</td></tr>
  </table>
  </dd>
</dl>
<ul>
<li>U_COMPARE_CODE_POINT_ORDER Set to choose code point order instead of code unit order (see u_strCompare for details).</li>
</ul>
<ul>
<li>U_FOLD_CASE_EXCLUDE_SPECIAL_I</li>
</ul>
<dl class="return"><dt><b>Returns:</b></dt><dd>A negative, zero, or positive integer indicating the comparison result. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001382">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03537">3537</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a6c7c33986b62cb279c06a601e7405db4"></a><!-- doxytag: member="UnicodeString::caseCompare" ref="a6c7c33986b62cb279c06a601e7405db4" args="(int32_t start, int32_t length, const UnicodeString &amp;srcText, int32_t srcStart, int32_t srcLength, uint32_t options) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::caseCompare </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>srcText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>options</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>Compare two strings case-insensitively using full case folding. </p>
<p>This is equivalent to this-&gt;foldCase(options).compare(srcText.foldCase(options)).</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>The start offset in this string at which the compare operation begins. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>The number of code units from this string to compare. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcText</em>&nbsp;</td><td>Another string to compare this one to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>The start offset in that string at which the compare operation begins. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>The number of code units from that string to compare. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td>A bit set of options:</p>
<ul>
<li>U_FOLD_CASE_DEFAULT or 0 is used for default options: Comparison in code unit order with default case folding.</li>
</ul>
</td></tr>
  </table>
  </dd>
</dl>
<ul>
<li>U_COMPARE_CODE_POINT_ORDER Set to choose code point order instead of code unit order (see u_strCompare for details).</li>
</ul>
<ul>
<li>U_FOLD_CASE_EXCLUDE_SPECIAL_I</li>
</ul>
<dl class="return"><dt><b>Returns:</b></dt><dd>A negative, zero, or positive integer indicating the comparison result. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001381">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03544">3544</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="a92f1f3ddf35f61e0bb0a05055f9e72c7"></a><!-- doxytag: member="UnicodeString::caseCompare" ref="a92f1f3ddf35f61e0bb0a05055f9e72c7" args="(int32_t start, int32_t length, const UnicodeString &amp;srcText, uint32_t options) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::caseCompare </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>srcText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>options</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>Compare two strings case-insensitively using full case folding. </p>
<p>This is equivalent to this-&gt;foldCase(options).compare(srcText.foldCase(options)).</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>The start offset in this string at which the compare operation begins. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>The number of code units from this string to compare. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcText</em>&nbsp;</td><td>Another string to compare this one to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td>A bit set of options:</p>
<ul>
<li>U_FOLD_CASE_DEFAULT or 0 is used for default options: Comparison in code unit order with default case folding.</li>
</ul>
</td></tr>
  </table>
  </dd>
</dl>
<ul>
<li>U_COMPARE_CODE_POINT_ORDER Set to choose code point order instead of code unit order (see u_strCompare for details).</li>
</ul>
<ul>
<li>U_FOLD_CASE_EXCLUDE_SPECIAL_I</li>
</ul>
<dl class="return"><dt><b>Returns:</b></dt><dd>A negative, zero, or positive integer indicating the comparison result. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001380">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03529">3529</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="ac633b7697029cfe347dcae70ce732939"></a><!-- doxytag: member="UnicodeString::caseCompare" ref="ac633b7697029cfe347dcae70ce732939" args="(const UnicodeString &amp;text, uint32_t options) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::caseCompare </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>text</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>options</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>Compare two strings case-insensitively using full case folding. </p>
<p>This is equivalent to this-&gt;foldCase(options).compare(text.foldCase(options)).</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>Another string to compare this one to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td>A bit set of options:</p>
<ul>
<li>U_FOLD_CASE_DEFAULT or 0 is used for default options: Comparison in code unit order with default case folding.</li>
</ul>
</td></tr>
  </table>
  </dd>
</dl>
<ul>
<li>U_COMPARE_CODE_POINT_ORDER Set to choose code point order instead of code unit order (see u_strCompare for details).</li>
</ul>
<ul>
<li>U_FOLD_CASE_EXCLUDE_SPECIAL_I</li>
</ul>
<dl class="return"><dt><b>Returns:</b></dt><dd>A negative, zero, or positive integer indicating the comparison result. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001379">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03524">3524</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a17b496f8cfa59eb453d0af3c35cf52d8"></a><!-- doxytag: member="UnicodeString::caseCompareBetween" ref="a17b496f8cfa59eb453d0af3c35cf52d8" args="(int32_t start, int32_t limit, const UnicodeString &amp;srcText, int32_t srcStart, int32_t srcLimit, uint32_t options) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::caseCompareBetween </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>limit</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>srcText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLimit</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>options</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>Compare two strings case-insensitively using full case folding. </p>
<p>This is equivalent to this-&gt;foldCase(options).compareBetween(text.foldCase(options)).</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>The start offset in this string at which the compare operation begins. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>limit</em>&nbsp;</td><td>The offset after the last code unit from this string to compare. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcText</em>&nbsp;</td><td>Another string to compare this one to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>The start offset in that string at which the compare operation begins. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLimit</em>&nbsp;</td><td>The offset after the last code unit from that string to compare. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td>A bit set of options:</p>
<ul>
<li>U_FOLD_CASE_DEFAULT or 0 is used for default options: Comparison in code unit order with default case folding.</li>
</ul>
</td></tr>
  </table>
  </dd>
</dl>
<ul>
<li>U_COMPARE_CODE_POINT_ORDER Set to choose code point order instead of code unit order (see u_strCompare for details).</li>
</ul>
<ul>
<li>U_FOLD_CASE_EXCLUDE_SPECIAL_I</li>
</ul>
<dl class="return"><dt><b>Returns:</b></dt><dd>A negative, zero, or positive integer indicating the comparison result. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001385">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03572">3572</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

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

<p>Return the code point that contains the code unit at offset <code>offset</code>. </p>
<p>If the offset is not valid (0..<a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a>-1) then U+ffff is returned. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>offset</em>&nbsp;</td><td>a valid offset into the text that indicates the text offset of any of the code units that will be assembled into a code point (21-bit value) and returned </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the code point of text at <code>offset</code> or 0xffff if the offset is not valid for this string </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001422">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Reimplemented from <a class="el" href="classReplaceable.html#ac7e972cbbe070b5fb1d0f824d2badb2c">Replaceable</a>.</p>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03946">3946</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>, and <a class="el" href="utf16_8h_source.html#l00188">U16_GET</a>.</p>

</div>
</div>
<a class="anchor" id="ae3ffb6e15396dff152cb459ce4008f90"></a><!-- doxytag: member="UnicodeString::charAt" ref="ae3ffb6e15396dff152cb459ce4008f90" args="(int32_t offset) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UChar UnicodeString::charAt </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>offset</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the code unit at offset <code>offset</code>. </p>
<p>If the offset is not valid (0..<a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a>-1) then U+ffff is returned. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>offset</em>&nbsp;</td><td>a valid offset into the text </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the code unit at offset <code>offset</code> or 0xffff if the offset is not valid for this string </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001420">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Reimplemented from <a class="el" href="classReplaceable.html#a78909dd61599c6f2d8af7a9d3bf5dd0f">Replaceable</a>.</p>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03938">3938</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="a6cf9e8332f251ddfb5758bcada18ea9e"></a><!-- doxytag: member="UnicodeString::clone" ref="a6cf9e8332f251ddfb5758bcada18ea9e" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classReplaceable.html">Replaceable</a>* UnicodeString::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>Clone this object, an instance of a subclass of <a class="el" href="classReplaceable.html" title="Replaceable is an abstract base class representing a string of characters that supports...">Replaceable</a>. </p>
<p>Clones can be used concurrently in multiple threads. If a subclass does not implement <a class="el" href="classUnicodeString.html#a6cf9e8332f251ddfb5758bcada18ea9e" title="Clone this object, an instance of a subclass of Replaceable.">clone()</a>, or if an error occurs, then NULL is returned. The clone functions in all subclasses return a pointer to a <a class="el" href="classReplaceable.html" title="Replaceable is an abstract base class representing a string of characters that supports...">Replaceable</a> because some compilers do not support covariant (same-as-this) return types; cast to the appropriate subclass if necessary. The caller must delete the clone.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a clone of this object</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classReplaceable.html#a6e976bb4e1517d753fed1ea82539657b" title="Clone this object, an instance of a subclass of Replaceable.">Replaceable::clone</a> </dd>
<dd>
<a class="el" href="classUnicodeString.html#ad92f0af01d4479b4c48807275005c002" title="ICU &quot;poor man&#39;s RTTI&quot;, returns a UClassID for the actual class.">getDynamicClassID</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001521">Stable:</a></b></dt><dd>ICU 2.6 </dd></dl>

<p>Reimplemented from <a class="el" href="classReplaceable.html#a6e976bb4e1517d753fed1ea82539657b">Replaceable</a>.</p>

</div>
</div>
<a class="anchor" id="a14d0ef73e76d1c90702ee5d4923ae8f9"></a><!-- doxytag: member="UnicodeString::compare" ref="a14d0ef73e76d1c90702ee5d4923ae8f9" args="(int32_t start, int32_t length, const UChar *srcChars, int32_t srcStart, int32_t srcLength) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::compare </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</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>Compare the characters bitwise in the range [<code>start</code>, <code>start + length</code>) with the characters in <code>srcChars</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</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>start</em>&nbsp;</td><td>the offset at which the compare operation begins </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters in this to compare </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcChars</em>&nbsp;</td><td>the characters to be compared </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcChars</code> to start comparison </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcChars</code> to compare </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The result of bitwise character comparison: 0 if this contains the same characters as <code>srcChars</code>, -1 if the characters in this are bitwise less than the characters in <code>srcChars</code>, +1 if the characters in this are bitwise greater than the characters in <code>srcChars</code>. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001370">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03430">3430</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="abf1a9b87377c49721ec32371afabb5a6"></a><!-- doxytag: member="UnicodeString::compare" ref="abf1a9b87377c49721ec32371afabb5a6" args="(int32_t start, int32_t length, const UChar *srcChars) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::compare </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</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>Compare the characters bitwise in the range [<code>start</code>, <code>start + length</code>) with the first <code>length</code> characters in <code>srcChars</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>start</em>&nbsp;</td><td>the offset at which the compare operation begins </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters to compare. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcChars</em>&nbsp;</td><td>the characters to be compared </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The result of bitwise character comparison: 0 if this contains the same characters as <code>srcChars</code>, -1 if the characters in this are bitwise less than the characters in <code>srcChars</code>, +1 if the characters in this are bitwise greater than the characters in <code>srcChars</code>. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001369">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03424">3424</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="a831c909209e45615aa0c4c368b7d600f"></a><!-- doxytag: member="UnicodeString::compare" ref="a831c909209e45615aa0c4c368b7d600f" args="(const UChar *srcChars, int32_t srcLength) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::compare </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</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>Compare the characters bitwise in this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> with the first <code>srcLength</code> characters in <code>srcChars</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>srcChars</em>&nbsp;</td><td>The characters to compare to this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcChars</code> to compare </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The result of bitwise character comparison: 0 if this contains the same characters as <code>srcChars</code>, -1 if the characters in this are bitwise less than the characters in <code>srcChars</code>, +1 if the characters in this are bitwise greater than the characters in <code>srcChars</code>. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001368">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03411">3411</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="afedda065f5a283232bffd434a3765af1"></a><!-- doxytag: member="UnicodeString::compare" ref="afedda065f5a283232bffd434a3765af1" args="(int32_t start, int32_t length, const UnicodeString &amp;srcText, int32_t srcStart, int32_t srcLength) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::compare </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>srcText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</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>Compare the characters bitwise in the range [<code>start</code>, <code>start + length</code>) with the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</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>start</em>&nbsp;</td><td>the offset at which the compare operation begins </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters in this to compare. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcText</em>&nbsp;</td><td>the text to be compared </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcText</code> to start comparison </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>src</code> to compare </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The result of bitwise character comparison: 0 if this contains the same characters as <code>srcText</code>, -1 if the characters in this are bitwise less than the characters in <code>srcText</code>, +1 if the characters in this are bitwise greater than the characters in <code>srcText</code>. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001367">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03416">3416</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="a5b0909813b13e3cebb0ea8915e822dd8"></a><!-- doxytag: member="UnicodeString::compare" ref="a5b0909813b13e3cebb0ea8915e822dd8" args="(int32_t start, int32_t length, const UnicodeString &amp;text) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::compare </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>text</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>Compare the characters bitwise in the range [<code>start</code>, <code>start + length</code>) with the characters in <code>text</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>start</em>&nbsp;</td><td>the offset at which the compare operation begins </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters of text to compare. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>the other text to be compared against this string. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The result of bitwise character comparison: 0 if this contains the same characters as <code>text</code>, -1 if the characters in this are bitwise less than the characters in <code>text</code>, +1 if the characters in this are bitwise greater than the characters in <code>text</code>. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001366">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03405">3405</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="aceb5ebe345197e0932d6b1c49a63493e"></a><!-- doxytag: member="UnicodeString::compare" ref="aceb5ebe345197e0932d6b1c49a63493e" args="(const UnicodeString &amp;text) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::compare </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>text</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compare the characters bitwise in this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> to the characters in <code>text</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>text</em>&nbsp;</td><td>The <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> to compare to this one. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The result of bitwise character comparison: 0 if this contains the same characters as <code>text</code>, -1 if the characters in this are bitwise less than the characters in <code>text</code>, +1 if the characters in this are bitwise greater than the characters in <code>text</code>. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001365">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03401">3401</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

<p>Referenced by <a class="el" href="unistr_8h_source.html#l03748">startsWith()</a>.</p>

</div>
</div>
<a class="anchor" id="a7d1d10ff930be9e96c21307360010e47"></a><!-- doxytag: member="UnicodeString::compareBetween" ref="a7d1d10ff930be9e96c21307360010e47" args="(int32_t start, int32_t limit, const UnicodeString &amp;srcText, int32_t srcStart, int32_t srcLimit) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::compareBetween </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>limit</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>srcText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLimit</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>Compare the characters bitwise in the range [<code>start</code>, <code>limit</code>) with the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcLimit</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>start</em>&nbsp;</td><td>the offset at which the compare operation begins </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>limit</em>&nbsp;</td><td>the offset immediately following the compare operation </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcText</em>&nbsp;</td><td>the text to be compared </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcText</code> to start comparison </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLimit</em>&nbsp;</td><td>the offset into <code>srcText</code> to limit comparison </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The result of bitwise character comparison: 0 if this contains the same characters as <code>srcText</code>, -1 if the characters in this are bitwise less than the characters in <code>srcText</code>, +1 if the characters in this are bitwise greater than the characters in <code>srcText</code>. </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>Definition at line <a class="el" href="unistr_8h_source.html#l03438">3438</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa71f8cb059b71c6ca80b8539740d6cac"></a><!-- doxytag: member="UnicodeString::compareCodePointOrder" ref="aa71f8cb059b71c6ca80b8539740d6cac" args="(int32_t start, int32_t length, const UChar *srcChars, int32_t srcStart, int32_t srcLength) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::compareCodePointOrder </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</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>Compare two Unicode strings in code point order. </p>
<p>The result may be different from the results of <a class="el" href="classUnicodeString.html#aceb5ebe345197e0932d6b1c49a63493e" title="Compare the characters bitwise in this UnicodeString to the characters in text.">compare()</a>, operator&lt;, etc. if supplementary characters are present:</p>
<p>In UTF-16, supplementary characters (with code points U+10000 and above) are stored with pairs of surrogate code units. These have values from 0xd800 to 0xdfff, which means that they compare as less than some other BMP characters like U+feff. This function compares Unicode strings in code point order. If either of the UTF-16 strings is malformed (i.e., it contains unpaired surrogates), then the result is not defined.</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>The start offset in this string at which the compare operation begins. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>The number of code units from this string to compare. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcChars</em>&nbsp;</td><td>A pointer to another string to compare this one to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>The start offset in that string at which the compare operation begins. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>The number of code units from that string to compare. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a negative/zero/positive integer corresponding to whether this string is less than/equal to/greater than the second one in code point order </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001377">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03491">3491</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="a6f4f499a6a85494afe6a59bb1fbbe757"></a><!-- doxytag: member="UnicodeString::compareCodePointOrder" ref="a6f4f499a6a85494afe6a59bb1fbbe757" args="(int32_t start, int32_t length, const UChar *srcChars) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::compareCodePointOrder </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</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>Compare two Unicode strings in code point order. </p>
<p>The result may be different from the results of <a class="el" href="classUnicodeString.html#aceb5ebe345197e0932d6b1c49a63493e" title="Compare the characters bitwise in this UnicodeString to the characters in text.">compare()</a>, operator&lt;, etc. if supplementary characters are present:</p>
<p>In UTF-16, supplementary characters (with code points U+10000 and above) are stored with pairs of surrogate code units. These have values from 0xd800 to 0xdfff, which means that they compare as less than some other BMP characters like U+feff. This function compares Unicode strings in code point order. If either of the UTF-16 strings is malformed (i.e., it contains unpaired surrogates), then the result is not defined.</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>The start offset in this string at which the compare operation begins. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>The number of code units from this string to compare. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcChars</em>&nbsp;</td><td>A pointer to another string to compare this one to. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a negative/zero/positive integer corresponding to whether this string is less than/equal to/greater than the second one in code point order </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001376">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03485">3485</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="a0992f7174f19a7060c88849867d1c676"></a><!-- doxytag: member="UnicodeString::compareCodePointOrder" ref="a0992f7174f19a7060c88849867d1c676" args="(const UChar *srcChars, int32_t srcLength) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::compareCodePointOrder </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</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>Compare two Unicode strings in code point order. </p>
<p>The result may be different from the results of <a class="el" href="classUnicodeString.html#aceb5ebe345197e0932d6b1c49a63493e" title="Compare the characters bitwise in this UnicodeString to the characters in text.">compare()</a>, operator&lt;, etc. if supplementary characters are present:</p>
<p>In UTF-16, supplementary characters (with code points U+10000 and above) are stored with pairs of surrogate code units. These have values from 0xd800 to 0xdfff, which means that they compare as less than some other BMP characters like U+feff. This function compares Unicode strings in code point order. If either of the UTF-16 strings is malformed (i.e., it contains unpaired surrogates), then the result is not defined.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>srcChars</em>&nbsp;</td><td>A pointer to another string to compare this one to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>The number of code units from that string to compare. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a negative/zero/positive integer corresponding to whether this string is less than/equal to/greater than the second one in code point order </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001375">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03472">3472</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="ab4d8310695ede2cb2ae567b42b4be23d"></a><!-- doxytag: member="UnicodeString::compareCodePointOrder" ref="ab4d8310695ede2cb2ae567b42b4be23d" args="(int32_t start, int32_t length, const UnicodeString &amp;srcText, int32_t srcStart, int32_t srcLength) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::compareCodePointOrder </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>srcText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</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>Compare two Unicode strings in code point order. </p>
<p>The result may be different from the results of <a class="el" href="classUnicodeString.html#aceb5ebe345197e0932d6b1c49a63493e" title="Compare the characters bitwise in this UnicodeString to the characters in text.">compare()</a>, operator&lt;, etc. if supplementary characters are present:</p>
<p>In UTF-16, supplementary characters (with code points U+10000 and above) are stored with pairs of surrogate code units. These have values from 0xd800 to 0xdfff, which means that they compare as less than some other BMP characters like U+feff. This function compares Unicode strings in code point order. If either of the UTF-16 strings is malformed (i.e., it contains unpaired surrogates), then the result is not defined.</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>The start offset in this string at which the compare operation begins. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>The number of code units from this string to compare. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcText</em>&nbsp;</td><td>Another string to compare this one to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>The start offset in that string at which the compare operation begins. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>The number of code units from that string to compare. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a negative/zero/positive integer corresponding to whether this string is less than/equal to/greater than the second one in code point order </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001374">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03477">3477</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="ac128831d632b323894b7f5851f2f6cbb"></a><!-- doxytag: member="UnicodeString::compareCodePointOrder" ref="ac128831d632b323894b7f5851f2f6cbb" args="(int32_t start, int32_t length, const UnicodeString &amp;srcText) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::compareCodePointOrder </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>srcText</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>Compare two Unicode strings in code point order. </p>
<p>The result may be different from the results of <a class="el" href="classUnicodeString.html#aceb5ebe345197e0932d6b1c49a63493e" title="Compare the characters bitwise in this UnicodeString to the characters in text.">compare()</a>, operator&lt;, etc. if supplementary characters are present:</p>
<p>In UTF-16, supplementary characters (with code points U+10000 and above) are stored with pairs of surrogate code units. These have values from 0xd800 to 0xdfff, which means that they compare as less than some other BMP characters like U+feff. This function compares Unicode strings in code point order. If either of the UTF-16 strings is malformed (i.e., it contains unpaired surrogates), then the result is not defined.</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>The start offset in this string at which the compare operation begins. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>The number of code units from this string to compare. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcText</em>&nbsp;</td><td>Another string to compare this one to. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a negative/zero/positive integer corresponding to whether this string is less than/equal to/greater than the second one in code point order </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>Definition at line <a class="el" href="unistr_8h_source.html#l03466">3466</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="ae478d3988b5e05e0c552fbd766de69f7"></a><!-- doxytag: member="UnicodeString::compareCodePointOrder" ref="ae478d3988b5e05e0c552fbd766de69f7" args="(const UnicodeString &amp;text) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::compareCodePointOrder </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>text</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compare two Unicode strings in code point order. </p>
<p>The result may be different from the results of <a class="el" href="classUnicodeString.html#aceb5ebe345197e0932d6b1c49a63493e" title="Compare the characters bitwise in this UnicodeString to the characters in text.">compare()</a>, operator&lt;, etc. if supplementary characters are present:</p>
<p>In UTF-16, supplementary characters (with code points U+10000 and above) are stored with pairs of surrogate code units. These have values from 0xd800 to 0xdfff, which means that they compare as less than some other BMP characters like U+feff. This function compares Unicode strings in code point order. If either of the UTF-16 strings is malformed (i.e., it contains unpaired surrogates), then the result is not defined.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>Another string to compare this one to. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a negative/zero/positive integer corresponding to whether this string is less than/equal to/greater than the second one in code point order </dd></dl>
<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="unistr_8h_source.html#l03462">3462</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a0de2de75dc86112cb63a5fc6c9cd874f"></a><!-- doxytag: member="UnicodeString::compareCodePointOrderBetween" ref="a0de2de75dc86112cb63a5fc6c9cd874f" args="(int32_t start, int32_t limit, const UnicodeString &amp;srcText, int32_t srcStart, int32_t srcLimit) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int8_t UnicodeString::compareCodePointOrderBetween </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>limit</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>srcText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLimit</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>Compare two Unicode strings in code point order. </p>
<p>The result may be different from the results of <a class="el" href="classUnicodeString.html#aceb5ebe345197e0932d6b1c49a63493e" title="Compare the characters bitwise in this UnicodeString to the characters in text.">compare()</a>, operator&lt;, etc. if supplementary characters are present:</p>
<p>In UTF-16, supplementary characters (with code points U+10000 and above) are stored with pairs of surrogate code units. These have values from 0xd800 to 0xdfff, which means that they compare as less than some other BMP characters like U+feff. This function compares Unicode strings in code point order. If either of the UTF-16 strings is malformed (i.e., it contains unpaired surrogates), then the result is not defined.</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>The start offset in this string at which the compare operation begins. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>limit</em>&nbsp;</td><td>The offset after the last code unit from this string to compare. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcText</em>&nbsp;</td><td>Another string to compare this one to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>The start offset in that string at which the compare operation begins. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLimit</em>&nbsp;</td><td>The offset after the last code unit from that string to compare. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a negative/zero/positive integer corresponding to whether this string is less than/equal to/greater than the second one in code point order </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001378">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03499">3499</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="a7a3e488399929c744e89a1e041988ec5"></a><!-- doxytag: member="UnicodeString::copy" ref="a7a3e488399929c744e89a1e041988ec5" args="(int32_t start, int32_t limit, int32_t dest)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void UnicodeString::copy </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>limit</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>dest</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>Copy a substring of this object, retaining attribute (out-of-band) information. </p>
<p>This method is used to duplicate or reorder substrings. The destination index must not overlap the source 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>the beginning index, inclusive; <code>0 &lt;= start &lt;= limit</code>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>limit</em>&nbsp;</td><td>the ending index, exclusive; <code>start &lt;= limit &lt;= <a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a></code>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dest</em>&nbsp;</td><td>the destination index. The characters from <code>start..limit-1</code> will be copied to <code>dest</code>. Implementations of this method may assume that <code>dest &lt;= start || dest &gt;= limit</code>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001481">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Implements <a class="el" href="classReplaceable.html#aa99cf49af5401c5bc89cd6894c67e2e8">Replaceable</a>.</p>

</div>
</div>
<a class="anchor" id="a8bdc18ea800dbf166cda5aba2d63612f"></a><!-- doxytag: member="UnicodeString::countChar32" ref="a8bdc18ea800dbf166cda5aba2d63612f" args="(int32_t start=0, int32_t length=INT32_MAX) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::countChar32 </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>start</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</em> = <code>INT32_MAX</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Count Unicode code points in the length UChar code units of the string. </p>
<p>A code point may occupy either one or two UChar code units. Counting code points involves reading all code units.</p>
<p>This functions is basically the inverse of <a class="el" href="classUnicodeString.html#a29075d1d1a125a472dea09b13da3c80d" title="Move the code unit index along the string by delta code points.">moveIndex32()</a>.</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>the index of the first code unit to check </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of UChar code units to check </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the number of code points in the specified code units </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeString.html#ac4cf80391a0e523c27aacaba796aede6" title="Return the length of the UnicodeString object.">length</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001436">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a3fd044063a86573cd5f0b74bb58bd99a"></a><!-- doxytag: member="UnicodeString::endsWith" ref="a3fd044063a86573cd5f0b74bb58bd99a" args="(const UChar *srcChars, int32_t srcStart, int32_t srcLength) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeString::endsWith </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</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>Determine if this ends with the characters in <code>srcChars</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</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>srcChars</em>&nbsp;</td><td>The characters to match. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcText</code> to start matching </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcChars</code> to match </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if this ends with the characters in <code>srcChars</code>, FALSE otherwise </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001393">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03793">3793</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>, and <a class="el" href="group__ustring__ustrlen.html#gac4d8a5581fc5bde71d62ebd0a7a84ec5">u_strlen()</a>.</p>

</div>
</div>
<a class="anchor" id="afe8c45af2965c45d76a387be46f57bc5"></a><!-- doxytag: member="UnicodeString::endsWith" ref="afe8c45af2965c45d76a387be46f57bc5" args="(const UChar *srcChars, int32_t srcLength) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeString::endsWith </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</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>Determine if this ends with the characters in <code>srcChars</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>srcChars</em>&nbsp;</td><td>The characters to match. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcChars</code> </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if this ends with the characters in <code>srcChars</code>, FALSE otherwise </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001392">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03783">3783</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>, and <a class="el" href="group__ustring__ustrlen.html#gac4d8a5581fc5bde71d62ebd0a7a84ec5">u_strlen()</a>.</p>

</div>
</div>
<a class="anchor" id="a8eb8e157edc82cdcc51d9420ff3f610c"></a><!-- doxytag: member="UnicodeString::endsWith" ref="a8eb8e157edc82cdcc51d9420ff3f610c" args="(const UnicodeString &amp;srcText, int32_t srcStart, int32_t srcLength) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeString::endsWith </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>srcText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</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>Determine if this ends with the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</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>srcText</em>&nbsp;</td><td>The text to match. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcText</code> to start matching </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcText</code> to match </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if this ends with the characters in <code>text</code>, FALSE otherwise </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>Definition at line <a class="el" href="unistr_8h_source.html#l03774">3774</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

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

<p>Determine if this ends with the characters in <code>text</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>text</em>&nbsp;</td><td>The text to match. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if this ends with the characters in <code>text</code>, FALSE otherwise </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001390">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03769">3769</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a0fb8e2d2d26be9db07ab4022ebb30fa6"></a><!-- doxytag: member="UnicodeString::extract" ref="a0fb8e2d2d26be9db07ab4022ebb30fa6" args="(char *dest, int32_t destCapacity, UConverter *cnv, UErrorCode &amp;errorCode) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::extract </td>
          <td>(</td>
          <td class="paramtype">char *&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="ucnv__err_8h.html#a0c2dcfbf71ad577f5285869e1ceb26b1">UConverter</a> *&nbsp;</td>
          <td class="paramname"> <em>cnv</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>errorCode</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>Convert the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> into a codepage string using an existing UConverter. </p>
<p>The output string is NUL-terminated if possible.</p>
<p>This function avoids the overhead of opening and closing a converter if multiple strings are extracted.</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>destination string buffer, can be NULL if destCapacity==0 </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>destCapacity</em>&nbsp;</td><td>the number of chars available at dest </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>cnv</em>&nbsp;</td><td>the converter object to be used (<a class="el" href="ucnv_8h.html#aba8147239dca1fe5773de4905f2f74c2" title="Resets the from-Unicode part of a converter state to the default state.">ucnv_resetFromUnicode()</a> will be called), or NULL for the default converter </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>errorCode</em>&nbsp;</td><td>normal ICU error code </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the length of the output string, not counting the terminating NUL; if the length is greater than destCapacity, then the string will not fit and a buffer of the indicated length would need to be passed in </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001434">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a1c516ba31e224a44282f8602f90bd670"></a><!-- doxytag: member="UnicodeString::extract" ref="a1c516ba31e224a44282f8602f90bd670" args="(int32_t start, int32_t startLength, char *target, uint32_t targetLength, const char *codepage=0) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::extract </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>startLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>target</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>targetLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>codepage</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Copy the characters in the range [<code>start</code>, <code>start + length</code>) into an array of characters in a specified codepage. </p>
<p>This function does not write any more than <code>targetLength</code> characters but returns the length of the entire output string so that one can allocate a larger buffer and call the function again if necessary. The output string is NUL-terminated if possible.</p>
<p>Recommendation: For invariant-character strings use <a class="el" href="classUnicodeString.html#a56cd8919f25e345065d934462b33fa36" title="Copy the characters in the range [start, start + length) into an array of characters...">extract(int32_t start, int32_t length, char *target, int32_t targetCapacity, enum EInvariant inv) const</a> because it avoids object code dependencies of <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> on the conversion 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>start</em>&nbsp;</td><td>offset of first character which will be copied </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>startLength</em>&nbsp;</td><td>the number of characters to extract </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>target</em>&nbsp;</td><td>the target buffer for extraction </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>targetLength</em>&nbsp;</td><td>the length of the target buffer </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>codepage</em>&nbsp;</td><td>the desired codepage for the characters. 0 has the special meaning of the default codepage If <code>codepage</code> is an empty string (<code>""</code>), then a simple conversion is performed on the codepage-invariant subset ("invariant characters") of the platform encoding. See <a class="el" href="utypes_8h.html" title="Basic definitions for ICU, for both C and C++ APIs.">utypes.h</a>. If <code>target</code> is NULL, then the number of bytes required for <code>target</code> is returned. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the output string length, not including the terminating NUL </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001433">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="ac15fabe40a5101c6419492dc751da345"></a><!-- doxytag: member="UnicodeString::extract" ref="ac15fabe40a5101c6419492dc751da345" args="(int32_t start, int32_t startLength, char *target, const char *codepage=0) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::extract </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>startLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>target</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>codepage</em> = <code>0</code></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>Copy the characters in the range [<code>start</code>, <code>start + length</code>) into an array of characters in a specified codepage. </p>
<p>The output string is NUL-terminated.</p>
<p>Recommendation: For invariant-character strings use <a class="el" href="classUnicodeString.html#a56cd8919f25e345065d934462b33fa36" title="Copy the characters in the range [start, start + length) into an array of characters...">extract(int32_t start, int32_t length, char *target, int32_t targetCapacity, enum EInvariant inv) const</a> because it avoids object code dependencies of <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> on the conversion 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>start</em>&nbsp;</td><td>offset of first character which will be copied </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>startLength</em>&nbsp;</td><td>the number of characters to extract </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>target</em>&nbsp;</td><td>the target buffer for extraction </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>codepage</em>&nbsp;</td><td>the desired codepage for the characters. 0 has the special meaning of the default codepage If <code>codepage</code> is an empty string (<code>""</code>), then a simple conversion is performed on the codepage-invariant subset ("invariant characters") of the platform encoding. See <a class="el" href="utypes_8h.html" title="Basic definitions for ICU, for both C and C++ APIs.">utypes.h</a>. If <code>target</code> is NULL, then the number of bytes required for <code>target</code> is returned. It is assumed that the target is big enough to fit all of the characters. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the output string length, not including the terminating NUL </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001432">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03905">3905</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03890">extract()</a>.</p>

</div>
</div>
<a class="anchor" id="a56cd8919f25e345065d934462b33fa36"></a><!-- doxytag: member="UnicodeString::extract" ref="a56cd8919f25e345065d934462b33fa36" args="(int32_t start, int32_t startLength, char *target, int32_t targetCapacity, enum EInvariant inv) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::extract </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>startLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>target</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>targetCapacity</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">enum <a class="el" href="classUnicodeString.html#a7ffe265551a9bf6ea0e4c0cb508cea8a">EInvariant</a>&nbsp;</td>
          <td class="paramname"> <em>inv</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>Copy the characters in the range [<code>start</code>, <code>start + length</code>) into an array of characters. </p>
<p>All characters must be invariant (see <a class="el" href="utypes_8h.html" title="Basic definitions for ICU, for both C and C++ APIs.">utypes.h</a>). Use US_INV as the last, signature-distinguishing parameter.</p>
<p>This function does not write any more than <code>targetLength</code> characters but returns the length of the entire output string so that one can allocate a larger buffer and call the function again if necessary. The output string is NUL-terminated if possible.</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>offset of first character which will be copied </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>startLength</em>&nbsp;</td><td>the number of characters to extract </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>target</em>&nbsp;</td><td>the target buffer for extraction, can be NULL if targetLength is 0 </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>targetCapacity</em>&nbsp;</td><td>the length of the target buffer </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>inv</em>&nbsp;</td><td>Signature-distinguishing paramater, use US_INV. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the output string length, not including the terminating NUL </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001431">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div>
<a class="anchor" id="a36effb107202af602f11e587375357f8"></a><!-- doxytag: member="UnicodeString::extract" ref="a36effb107202af602f11e587375357f8" args="(int32_t start, int32_t length, UnicodeString &amp;target) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void UnicodeString::extract </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">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="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>target</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>Copy the characters in the range [<code>start</code>, <code>start + length</code>) into the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> <code>target</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>start</em>&nbsp;</td><td>offset of first character which will be copied </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters to extract </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>target</em>&nbsp;</td><td><a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> into which to copy characters. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>A reference to <code>target</code> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001428">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03897">3897</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="a3cfd4a0adb5625f4895139fd9f045f99"></a><!-- doxytag: member="UnicodeString::extract" ref="a3cfd4a0adb5625f4895139fd9f045f99" args="(UChar *dest, int32_t destCapacity, UErrorCode &amp;errorCode) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::extract </td>
          <td>(</td>
          <td class="paramtype">UChar *&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>errorCode</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>Copy the contents of the string into dest. </p>
<p>This is a convenience function that checks if there is enough space in dest, extracts the entire string if possible, and NUL-terminates dest if possible.</p>
<p>If the string fits into dest but cannot be NUL-terminated (<a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a>==destCapacity) then the error code is set to U_STRING_NOT_TERMINATED_WARNING. If the string itself does not fit into dest (<a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a>&gt;destCapacity) then the error code is set to U_BUFFER_OVERFLOW_ERROR.</p>
<p>If the string aliases to <code>dest</code> itself as an external buffer, then <a class="el" href="classUnicodeString.html#a9b2d4e417740becdb24a59fab263b8e3" title="Copy the characters in the range [start, start + length) into the array dst, beginning...">extract()</a> will not copy the contents.</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>Destination string buffer. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>destCapacity</em>&nbsp;</td><td>Number of UChars available at dest. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>errorCode</em>&nbsp;</td><td>ICU error code. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001427">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a9b2d4e417740becdb24a59fab263b8e3"></a><!-- doxytag: member="UnicodeString::extract" ref="a9b2d4e417740becdb24a59fab263b8e3" args="(int32_t start, int32_t length, UChar *dst, int32_t dstStart=0) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void UnicodeString::extract </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">UChar *&nbsp;</td>
          <td class="paramname"> <em>dst</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>dstStart</em> = <code>0</code></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>Copy the characters in the range [<code>start</code>, <code>start + length</code>) into the array <code>dst</code>, beginning at <code>dstStart</code>. </p>
<p>If the string aliases to <code>dst</code> itself as an external buffer, then <a class="el" href="classUnicodeString.html#a9b2d4e417740becdb24a59fab263b8e3" title="Copy the characters in the range [start, start + length) into the array dst, beginning...">extract()</a> will not copy the contents.</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>offset of first character which will be copied into the array </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters to extract </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dst</em>&nbsp;</td><td>array in which to copy characters. The length of <code>dst</code> must be at least (<code>dstStart + length</code>). </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dstStart</em>&nbsp;</td><td>the offset in <code>dst</code> where the first character will be extracted </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001426">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03890">3890</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>Referenced by <a class="el" href="unistr_8h_source.html#l03905">extract()</a>.</p>

</div>
</div>
<a class="anchor" id="ad25e9b7db7e37fa102f152729b5f2aa5"></a><!-- doxytag: member="UnicodeString::extractBetween" ref="ad25e9b7db7e37fa102f152729b5f2aa5" args="(int32_t start, int32_t limit, UnicodeString &amp;target) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void UnicodeString::extractBetween </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">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="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>target</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>Copy the characters in the range [<code>start</code>, <code>limit</code>) into the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> <code>target</code>. </p>
<p><a class="el" href="classReplaceable.html" title="Replaceable is an abstract base class representing a string of characters that supports...">Replaceable</a> API. </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>offset of first character which will be copied </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>limit</em>&nbsp;</td><td>offset immediately following the last character to be copied </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>target</em>&nbsp;</td><td><a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> into which to copy characters. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>A reference to <code>target</code> </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="ad5dbb294a5eb01e1b4af82abc8eceeed"></a><!-- doxytag: member="UnicodeString::extractBetween" ref="ad5dbb294a5eb01e1b4af82abc8eceeed" args="(int32_t start, int32_t limit, UChar *dst, int32_t dstStart=0) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void UnicodeString::extractBetween </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>limit</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">UChar *&nbsp;</td>
          <td class="paramname"> <em>dst</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>dstStart</em> = <code>0</code></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>Copy the characters in the range [<code>start</code>, <code>limit</code>) into the array <code>dst</code>, beginning at <code>dstStart</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>start</em>&nbsp;</td><td>offset of first character which will be copied into the array </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>limit</em>&nbsp;</td><td>offset immediately following the last character to be copied </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dst</em>&nbsp;</td><td>array in which to copy characters. The length of <code>dst</code> must be at least (<code>dstStart + (limit - start)</code>). </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dstStart</em>&nbsp;</td><td>the offset in <code>dst</code> where the first character will be extracted </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>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03918">3918</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

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

<p>Almost the same as the assignment operator. </p>
<p>Replace the characters in this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> with the characters from <code>srcText</code>.</p>
<p>This function works the same for all strings except for ones that are readonly aliases. Starting with ICU 2.4, the assignment operator and the copy constructor allocate a new buffer and copy the buffer contents even for readonly aliases. This function implements the old, more efficient but less safe behavior of making this string also a readonly alias to the same buffer. The fastCopyFrom function must be used only if it is known that the lifetime of this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> is at least as long as the lifetime of the aliased buffer including its contents, for example for strings from resource bundles or aliases to string contents.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>src</em>&nbsp;</td><td>The text containing the characters to replace. </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#_stable001443">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

</div>
</div>
<a class="anchor" id="a555e3d6d31bb6fbfac2236bc94806700"></a><!-- doxytag: member="UnicodeString::findAndReplace" ref="a555e3d6d31bb6fbfac2236bc94806700" args="(int32_t start, int32_t length, const UnicodeString &amp;oldText, int32_t oldStart, int32_t oldLength, const UnicodeString &amp;newText, int32_t newStart, int32_t newLength)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a>&amp; UnicodeString::findAndReplace </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>oldText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>oldStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>oldLength</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>newText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>newStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>newLength</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Replace all occurrences of characters in oldText in the range [<code>oldStart</code>, <code>oldStart + oldLength</code>) with the characters in newText in the range [<code>newStart</code>, <code>newStart + newLength</code>) in the range [<code>start</code>, <code>start + length</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>start</em>&nbsp;</td><td>the start of the range in which replace will performed </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the length of the range in which replace will be performed </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>oldText</em>&nbsp;</td><td>the text containing the search text </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>oldStart</em>&nbsp;</td><td>the start of the search range in <code>oldText</code> </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>oldLength</em>&nbsp;</td><td>the length of the search range in <code>oldText</code> </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>newText</em>&nbsp;</td><td>the text containing the replacement text </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>newStart</em>&nbsp;</td><td>the start of the replacement range in <code>newText</code> </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>newLength</em>&nbsp;</td><td>the length of the replacement range in <code>newText</code> </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#_stable001484">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="ae3ed2d6a16b461c531ad1a3f0bc66c91"></a><!-- doxytag: member="UnicodeString::findAndReplace" ref="ae3ed2d6a16b461c531ad1a3f0bc66c91" args="(int32_t start, int32_t length, const UnicodeString &amp;oldText, const UnicodeString &amp;newText)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::findAndReplace </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>oldText</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>newText</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Replace all occurrences of characters in oldText with characters in newText in the range [<code>start</code>, <code>start + length</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>start</em>&nbsp;</td><td>the start of the range in which replace will performed </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the length of the range in which replace will be performed </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>oldText</em>&nbsp;</td><td>the text containing the search text </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>newText</em>&nbsp;</td><td>the text containing the replacement text </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#_stable001483">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03873">3873</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03867">findAndReplace()</a>, and <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a332cce292be22e3bc76a53f17c4ad6ff"></a><!-- doxytag: member="UnicodeString::findAndReplace" ref="a332cce292be22e3bc76a53f17c4ad6ff" args="(const UnicodeString &amp;oldText, const UnicodeString &amp;newText)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::findAndReplace </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>oldText</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>newText</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Replace all occurrences of characters in oldText with the characters in newText. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>oldText</em>&nbsp;</td><td>the text containing the search text </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>newText</em>&nbsp;</td><td>the text containing the replacement text </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#_stable001482">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03867">3867</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

<p>Referenced by <a class="el" href="unistr_8h_source.html#l03873">findAndReplace()</a>.</p>

</div>
</div>
<a class="anchor" id="a5c05b9f91b3ffadea68bf3f655e6bd70"></a><!-- doxytag: member="UnicodeString::foldCase" ref="a5c05b9f91b3ffadea68bf3f655e6bd70" args="(uint32_t options=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a>&amp; UnicodeString::foldCase </td>
          <td>(</td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>options</em> = <code>0</code></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Case-fold the characters in this string. </p>
<p>Case-folding is locale-independent and not context-sensitive, but there is an option for whether to include or exclude mappings for dotted I and dotless i that are marked with 'I' in CaseFolding.txt. The result may be longer or shorter than the original.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td>Either U_FOLD_CASE_DEFAULT or U_FOLD_CASE_EXCLUDE_SPECIAL_I </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#_stable001501">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a34eda92a2c60797052116eb7acada1dc"></a><!-- doxytag: member="UnicodeString::getBuffer" ref="a34eda92a2c60797052116eb7acada1dc" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const UChar * UnicodeString::getBuffer </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get a read-only pointer to the internal buffer. </p>
<p>This can be called at any time on a valid <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>.</p>
<p>It returns 0 if the string is bogus, or during an "open" getBuffer(minCapacity).</p>
<p>It can be called as many times as desired. The pointer that it returns will remain valid until the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object is modified, at which time the pointer is semantically invalidated and must not be used any more.</p>
<p>The capacity of the buffer can be determined with <a class="el" href="classUnicodeString.html#a924521b1d7d9828ac9374e467144b0cc" title="Return the capacity of the internal buffer of the UnicodeString object.">getCapacity()</a>. The part after <a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a> may or may not be initialized and valid, depending on the history of the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object.</p>
<p>The buffer contents is (probably) not NUL-terminated. You can check if it is with <code>(s.length()&lt;s.getCapacity() &amp;&amp; buffer[s.length()]==0)</code>. (See <a class="el" href="classUnicodeString.html#a8aecf2249fdb51e284270a6f31e2cd75" title="Get a read-only pointer to the internal buffer, making sure that it is NUL-terminated...">getTerminatedBuffer()</a>.)</p>
<p>The buffer may reside in read-only memory. Its contents must not be modified.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a read-only pointer to the internal string buffer, or 0 if the string is empty or bogus</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeString.html#ab60ed4d07f726d3cceb3964c6556a34b" title="Get a read/write pointer to the internal buffer.">getBuffer(int32_t minCapacity)</a> </dd>
<dd>
<a class="el" href="classUnicodeString.html#a8aecf2249fdb51e284270a6f31e2cd75" title="Get a read-only pointer to the internal buffer, making sure that it is NUL-terminated...">getTerminatedBuffer()</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001504">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03338">3338</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab60ed4d07f726d3cceb3964c6556a34b"></a><!-- doxytag: member="UnicodeString::getBuffer" ref="ab60ed4d07f726d3cceb3964c6556a34b" args="(int32_t minCapacity)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UChar* UnicodeString::getBuffer </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>minCapacity</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get a read/write pointer to the internal buffer. </p>
<p>The buffer is guaranteed to be large enough for at least minCapacity UChars, writable, and is still owned by the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object. Calls to getBuffer(minCapacity) must not be nested, and must be matched with calls to releaseBuffer(newLength). If the string buffer was read-only or shared, then it will be reallocated and copied.</p>
<p>An attempted nested call will return 0, and will not further modify the state of the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object. It also returns 0 if the string is bogus.</p>
<p>The actual capacity of the string buffer may be larger than minCapacity. <a class="el" href="classUnicodeString.html#a924521b1d7d9828ac9374e467144b0cc" title="Return the capacity of the internal buffer of the UnicodeString object.">getCapacity()</a> returns the actual capacity. For many operations, the full capacity should be used to avoid reallocations.</p>
<p>While the buffer is "open" between getBuffer(minCapacity) and releaseBuffer(newLength), the following applies:</p>
<ul>
<li>The string length is set to 0.</li>
<li>Any read API call on the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object will behave like on a 0-length string.</li>
<li>Any write API call on the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object is disallowed and will have no effect.</li>
<li>You can read from and write to the returned buffer.</li>
<li>The previous string contents will still be in the buffer; if you want to use it, then you need to call <a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a> before getBuffer(minCapacity). If the <a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a> was greater than minCapacity, then any contents after minCapacity may be lost. The buffer contents is not NUL-terminated by <a class="el" href="classUnicodeString.html#ab60ed4d07f726d3cceb3964c6556a34b" title="Get a read/write pointer to the internal buffer.">getBuffer()</a>. If <a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a>&lt;<a class="el" href="classUnicodeString.html#a924521b1d7d9828ac9374e467144b0cc" title="Return the capacity of the internal buffer of the UnicodeString object.">getCapacity()</a> then you can terminate it by writing a NUL at index <a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a>.</li>
<li>You must call releaseBuffer(newLength) before and in order to return to normal <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> operation.</li>
</ul>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>minCapacity</em>&nbsp;</td><td>the minimum number of UChars that are to be available in the buffer, starting at the returned pointer; default to the current string capacity if minCapacity==-1 </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a writable pointer to the internal string buffer, or 0 if an error occurs (nested calls, out of memory)</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeString.html#aa38976ed70bda538598da31a4631387d" title="Release a read/write buffer on a UnicodeString object with an &quot;open&quot; getBuffer(minCapacity...">releaseBuffer</a> </dd>
<dd>
<a class="el" href="classUnicodeString.html#a8aecf2249fdb51e284270a6f31e2cd75" title="Get a read-only pointer to the internal buffer, making sure that it is NUL-terminated...">getTerminatedBuffer()</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001502">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Referenced by <a class="el" href="normlzr_8h_source.html#l00809">Normalizer::compare()</a>, <a class="el" href="normlzr_8h_source.html#l00785">Normalizer::isNormalized()</a>, and <a class="el" href="normlzr_8h_source.html#l00761">Normalizer::quickCheck()</a>.</p>

</div>
</div>
<a class="anchor" id="a924521b1d7d9828ac9374e467144b0cc"></a><!-- doxytag: member="UnicodeString::getCapacity" ref="a924521b1d7d9828ac9374e467144b0cc" args="(void) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::getCapacity </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>Return the capacity of the internal buffer of the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object. </p>
<p>This is useful together with the getBuffer functions. See there for details.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the number of UChars available in the internal buffer </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeString.html#ab60ed4d07f726d3cceb3964c6556a34b" title="Get a read/write pointer to the internal buffer.">getBuffer</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001439">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03314">3314</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>Referenced by <a class="el" href="unistr_8h_source.html#l04020">getTerminatedBuffer()</a>.</p>

</div>
</div>
<a class="anchor" id="a5b71c5fb6542921ad247f95c87dc00cf"></a><!-- doxytag: member="UnicodeString::getChar32At" ref="a5b71c5fb6542921ad247f95c87dc00cf" args="(int32_t offset) 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> UnicodeString::getChar32At </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>offset</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The change in <a class="el" href="classReplaceable.html" title="Replaceable is an abstract base class representing a string of characters that supports...">Replaceable</a> to use virtual <a class="el" href="classUnicodeString.html#a5b71c5fb6542921ad247f95c87dc00cf" title="The change in Replaceable to use virtual getChar32At() allows UnicodeString::char32At()...">getChar32At()</a> allows <a class="el" href="classUnicodeString.html#a9ca80740ef5199cf1809c66a4ef6ba3d" title="Return the code point that contains the code unit at offset offset.">UnicodeString::char32At()</a> to be inline again (see jitterbug 709). </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001529">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

<p>Implements <a class="el" href="classReplaceable.html#a6305704f7ac09b06c85fd7698f7ac384">Replaceable</a>.</p>

</div>
</div>
<a class="anchor" id="a20f1e4c661d0fc07c800ad8b4ec37587"></a><!-- doxytag: member="UnicodeString::getChar32Limit" ref="a20f1e4c661d0fc07c800ad8b4ec37587" args="(int32_t offset) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::getChar32Limit </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>offset</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adjust a random-access offset so that it points behind a Unicode character. </p>
<p>The offset that is passed in points behind any code unit of a code point, while the returned offset will point behind the last code unit of the same code point. In UTF-16, if the input offset points behind the first surrogate (i.e., to the second surrogate) of a surrogate pair, then the returned offset will point behind the second surrogate (i.e., to the first surrogate). </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>offset</em>&nbsp;</td><td>a valid offset after any code unit of a code point of the text </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>offset of the first code unit after the same code point </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="utf16_8h.html#a3d5ff64af4bf16cbf9a830743a5c74a4" title="Adjust a random-access offset to a code point boundary after a code point.">U16_SET_CP_LIMIT</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001424">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03971">3971</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>, and <a class="el" href="utf16_8h_source.html#l00599">U16_SET_CP_LIMIT</a>.</p>

</div>
</div>
<a class="anchor" id="a121c8e74fb409a9b2e3a503f965f75f1"></a><!-- doxytag: member="UnicodeString::getChar32Start" ref="a121c8e74fb409a9b2e3a503f965f75f1" args="(int32_t offset) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::getChar32Start </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>offset</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adjust a random-access offset so that it points to the beginning of a Unicode character. </p>
<p>The offset that is passed in points to any code unit of a code point, while the returned offset will point to the first code unit of the same code point. In UTF-16, if the input offset points to a second surrogate of a surrogate pair, then the returned offset will point to the first surrogate. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>offset</em>&nbsp;</td><td>a valid offset into one code point of the text </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>offset of the first code unit of the same code point </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="utf16_8h.html#a31c914801f71204ee90caa6c4d0c3c1b" title="Adjust a random-access offset to a code point boundary at the start of a code point...">U16_SET_CP_START</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001423">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03960">3960</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>, and <a class="el" href="utf16_8h_source.html#l00420">U16_SET_CP_START</a>.</p>

</div>
</div>
<a class="anchor" id="a78317735bb5f7261750e90eeb39f1f40"></a><!-- doxytag: member="UnicodeString::getCharAt" ref="a78317735bb5f7261750e90eeb39f1f40" args="(int32_t offset) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual UChar UnicodeString::getCharAt </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>offset</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The change in <a class="el" href="classReplaceable.html" title="Replaceable is an abstract base class representing a string of characters that supports...">Replaceable</a> to use virtual <a class="el" href="classUnicodeString.html#a78317735bb5f7261750e90eeb39f1f40" title="The change in Replaceable to use virtual getCharAt() allows UnicodeString::charAt()...">getCharAt()</a> allows <a class="el" href="classUnicodeString.html#ae3ffb6e15396dff152cb459ce4008f90" title="Return the code unit at offset offset.">UnicodeString::charAt()</a> to be inline again (see jitterbug 709). </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001528">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

<p>Implements <a class="el" href="classReplaceable.html#a5cb36727170bbcc883a0c5846a6c4484">Replaceable</a>.</p>

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

<p>ICU "poor man's RTTI", returns a UClassID for the actual class. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001526">Stable:</a></b></dt><dd>ICU 2.2 </dd></dl>

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

</div>
</div>
<a class="anchor" id="a362a1368137278f56f464aa0199a8117"></a><!-- doxytag: member="UnicodeString::getLength" ref="a362a1368137278f56f464aa0199a8117" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int32_t UnicodeString::getLength </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Implement <a class="el" href="classReplaceable.html#aaa70d54cdfecf5e6a0a86566c8f75809" title="Virtual version of length().">Replaceable::getLength()</a> (see jitterbug 1027). </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001527">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

<p>Implements <a class="el" href="classReplaceable.html#aaa70d54cdfecf5e6a0a86566c8f75809">Replaceable</a>.</p>

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

<p>ICU "poor man's RTTI", returns a UClassID for this class. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001525">Stable:</a></b></dt><dd>ICU 2.2 </dd></dl>

</div>
</div>
<a class="anchor" id="a8aecf2249fdb51e284270a6f31e2cd75"></a><!-- doxytag: member="UnicodeString::getTerminatedBuffer" ref="a8aecf2249fdb51e284270a6f31e2cd75" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const UChar * UnicodeString::getTerminatedBuffer </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get a read-only pointer to the internal buffer, making sure that it is NUL-terminated. </p>
<p>This can be called at any time on a valid <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>.</p>
<p>It returns 0 if the string is bogus, or during an "open" getBuffer(minCapacity), or if the buffer cannot be NUL-terminated (because memory allocation failed).</p>
<p>It can be called as many times as desired. The pointer that it returns will remain valid until the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object is modified, at which time the pointer is semantically invalidated and must not be used any more.</p>
<p>The capacity of the buffer can be determined with <a class="el" href="classUnicodeString.html#a924521b1d7d9828ac9374e467144b0cc" title="Return the capacity of the internal buffer of the UnicodeString object.">getCapacity()</a>. The part after <a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a>+1 may or may not be initialized and valid, depending on the history of the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object.</p>
<p>The buffer contents is guaranteed to be NUL-terminated. <a class="el" href="classUnicodeString.html#a8aecf2249fdb51e284270a6f31e2cd75" title="Get a read-only pointer to the internal buffer, making sure that it is NUL-terminated...">getTerminatedBuffer()</a> may reallocate the buffer if a terminating NUL is written. For this reason, this function is not const, unlike <a class="el" href="classUnicodeString.html#ab60ed4d07f726d3cceb3964c6556a34b" title="Get a read/write pointer to the internal buffer.">getBuffer()</a>. Note that a <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> may also contain NUL characters as part of its contents.</p>
<p>The buffer may reside in read-only memory. Its contents must not be modified.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a read-only pointer to the internal string buffer, or 0 if the string is empty or bogus</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeString.html#ab60ed4d07f726d3cceb3964c6556a34b" title="Get a read/write pointer to the internal buffer.">getBuffer(int32_t minCapacity)</a> </dd>
<dd>
<a class="el" href="classUnicodeString.html#ab60ed4d07f726d3cceb3964c6556a34b" title="Get a read/write pointer to the internal buffer.">getBuffer()</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001505">Stable:</a></b></dt><dd>ICU 2.2 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04020">4020</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03314">getCapacity()</a>, and <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a1050a1af8098db0ef879f2415ba41e82"></a><!-- doxytag: member="UnicodeString::handleReplaceBetween" ref="a1050a1af8098db0ef879f2415ba41e82" args="(int32_t start, int32_t limit, const UnicodeString &amp;text)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void UnicodeString::handleReplaceBetween </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>limit</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>text</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>Replace a substring of this object with the given text. </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>the beginning index, inclusive; <code>0 &lt;= start &lt;= limit</code>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>limit</em>&nbsp;</td><td>the ending index, exclusive; <code>start &lt;= limit &lt;= <a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a></code>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>the text to replace characters <code>start</code> to <code>limit - 1</code> </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001479">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a6724ae76d51cf802ded394eaedd7b3fd"></a><!-- doxytag: member="UnicodeString::hashCode" ref="a6724ae76d51cf802ded394eaedd7b3fd" args="(void) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::hashCode </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>Generate a hash code for this object. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>The hash code of this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>. </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>Definition at line <a class="el" href="unistr_8h_source.html#l03318">3318</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

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

<p><a class="el" href="classReplaceable.html" title="Replaceable is an abstract base class representing a string of characters that supports...">Replaceable</a> API. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if it has MetaData </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001480">Stable:</a></b></dt><dd>ICU 2.4 </dd></dl>

<p>Reimplemented from <a class="el" href="classReplaceable.html#ad4ae052a7be93bb0a69a6a55ff45ca43">Replaceable</a>.</p>

</div>
</div>
<a class="anchor" id="ad06ed58e01980802cdbc8dfff6179691"></a><!-- doxytag: member="UnicodeString::hasMoreChar32Than" ref="ad06ed58e01980802cdbc8dfff6179691" args="(int32_t start, int32_t length, int32_t number) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeString::hasMoreChar32Than </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>number</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>Check if the length UChar code units of the string contain more Unicode code points than a certain number. </p>
<p>This is more efficient than counting all code points in this part of the string and comparing that number with a threshold. This function may not need to scan the string at all if the length falls within a certain range, and never needs to count more than 'number+1' code points. Logically equivalent to (countChar32(start, length)&gt;number). A Unicode code point may occupy either one or two UChar code units.</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>the index of the first code unit to check (0 for the entire string) </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of UChar code units to check (use INT32_MAX for the entire string; remember that start/length values are pinned) </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>The number of code points in the (sub)string is compared against the 'number' parameter. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Boolean value for whether the string contains more Unicode code points than 'number'. Same as (u_countChar32(s, length)&gt;number). </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeString.html#a8bdc18ea800dbf166cda5aba2d63612f" title="Count Unicode code points in the length UChar code units of the string.">countChar32</a> </dd>
<dd>
<a class="el" href="ustring_8h.html#aabfeafb91e43b3a2c8bdd46c0743d4b2" title="Check if the string contains more Unicode code points than a certain number.">u_strHasMoreChar32Than</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="a4317a47256f75125bbda1e8e4b3e6028"></a><!-- doxytag: member="UnicodeString::indexOf" ref="a4317a47256f75125bbda1e8e4b3e6028" args="(UChar32 c, int32_t start, int32_t length) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::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>
        </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>Locate in this the first occurrence of the code point <code>c</code> in the range [<code>start</code>, <code>start + length</code>), using bitwise comparison. </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>The code point to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>the offset into this at which to start matching </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters in this to search </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of <code>c</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001406">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03636">3636</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="aaf31e1fcb5b1d50af7a66111da937097"></a><!-- doxytag: member="UnicodeString::indexOf" ref="aaf31e1fcb5b1d50af7a66111da937097" args="(UChar c, int32_t start, int32_t length) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::indexOf </td>
          <td>(</td>
          <td class="paramtype">UChar&nbsp;</td>
          <td class="paramname"> <em>c</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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>Locate in this the first occurrence of the BMP code point <code>c</code> in the range [<code>start</code>, <code>start + length</code>), using bitwise comparison. </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>The code unit to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>the offset into this at which to start matching </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters in this to search </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of <code>c</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001405">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03630">3630</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="ae47d3da37887c5be54e30ee9274b09e6"></a><!-- doxytag: member="UnicodeString::indexOf" ref="ae47d3da37887c5be54e30ee9274b09e6" args="(UChar32 c, int32_t start) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::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>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>start</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>Locate in this the first occurrence of the code point <code>c</code> starting at offset <code>start</code>, using bitwise comparison. </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>The code point to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>The offset at which searching will start. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of <code>c</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001404">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03657">3657</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03598">indexOf()</a>, and <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="afbdcf763ceb9b97ab0616342a4f8f973"></a><!-- doxytag: member="UnicodeString::indexOf" ref="afbdcf763ceb9b97ab0616342a4f8f973" args="(UChar c, int32_t start) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::indexOf </td>
          <td>(</td>
          <td class="paramtype">UChar&nbsp;</td>
          <td class="paramname"> <em>c</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>start</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>Locate in this the first occurrence of the BMP code point <code>c</code>, starting at offset <code>start</code>, using bitwise comparison. </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>The code unit to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>The offset at which searching will start. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of <code>c</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001403">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03650">3650</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a30bdd224b64c0e6267595a15c93fc3a7"></a><!-- doxytag: member="UnicodeString::indexOf" ref="a30bdd224b64c0e6267595a15c93fc3a7" args="(UChar32 c) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::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<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Locate in this the first occurrence of the code point <code>c</code>, using bitwise comparison. </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>The code point to search for. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of <code>c</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001402">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03646">3646</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03598">indexOf()</a>, and <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a87e9187b51ea0ec9f09fef60bfba675c"></a><!-- doxytag: member="UnicodeString::indexOf" ref="a87e9187b51ea0ec9f09fef60bfba675c" args="(UChar c) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::indexOf </td>
          <td>(</td>
          <td class="paramtype">UChar&nbsp;</td>
          <td class="paramname"> <em>c</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Locate in this the first occurrence of the BMP code point <code>c</code>, using bitwise comparison. </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>The code unit to search for. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of <code>c</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001401">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03642">3642</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a83234340f020cebee8e7fb2ef0e461dd"></a><!-- doxytag: member="UnicodeString::indexOf" ref="a83234340f020cebee8e7fb2ef0e461dd" args="(const UChar *srcChars, int32_t srcStart, int32_t srcLength, int32_t start, int32_t length) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::indexOf </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>Locate in this the first occurrence in the range [<code>start</code>, <code>start + length</code>) of the characters in <code>srcChars</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>), using bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>srcChars</em>&nbsp;</td><td>The text to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcChars</code> at which to start matching </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcChars</code> to match </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>the offset into this at which to start matching </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters in this to search </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of the start of <code>text</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001400">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="afef7ea1a41634a2cb705181a0901acf8"></a><!-- doxytag: member="UnicodeString::indexOf" ref="afef7ea1a41634a2cb705181a0901acf8" args="(const UChar *srcChars, int32_t srcLength, int32_t start, int32_t length) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::indexOf </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>Locate in this the first occurrence in the range [<code>start</code>, <code>start + length</code>) of the characters in <code>srcChars</code>, using bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>srcChars</em>&nbsp;</td><td>The text to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcChars</code> </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>The offset at which searching will start. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>The number of characters to search </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of the start of <code>srcChars</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001399">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03623">3623</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03598">indexOf()</a>.</p>

</div>
</div>
<a class="anchor" id="a2979c7d50ff98dc4778f66b6bc3c2eba"></a><!-- doxytag: member="UnicodeString::indexOf" ref="a2979c7d50ff98dc4778f66b6bc3c2eba" args="(const UChar *srcChars, int32_t srcLength, int32_t start) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::indexOf </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>start</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>Locate in this the first occurrence of the characters in <code>srcChars</code> starting at offset <code>start</code>, using bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>srcChars</em>&nbsp;</td><td>The text to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcChars</code> to match </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>the offset into this at which to start matching </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of the start of <code>text</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001398">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03615">3615</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03598">indexOf()</a>, and <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a1100d0d24f929546012ea6f71dc4809d"></a><!-- doxytag: member="UnicodeString::indexOf" ref="a1100d0d24f929546012ea6f71dc4809d" args="(const UnicodeString &amp;srcText, int32_t srcStart, int32_t srcLength, int32_t start, int32_t length) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::indexOf </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>srcText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>Locate in this the first occurrence in the range [<code>start</code>, <code>start + length</code>) of the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>), using bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>srcText</em>&nbsp;</td><td>The text to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcText</code> at which to start matching </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcText</code> to match </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>the offset into this at which to start matching </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters in this to search </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of the start of <code>text</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001397">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03582">3582</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03598">indexOf()</a>, and <a class="el" href="unistr_8h_source.html#l03322">isBogus()</a>.</p>

</div>
</div>
<a class="anchor" id="a6fd64f74511b448ec9ee15434fb3a09b"></a><!-- doxytag: member="UnicodeString::indexOf" ref="a6fd64f74511b448ec9ee15434fb3a09b" args="(const UnicodeString &amp;text, int32_t start, int32_t length) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::indexOf </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>text</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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>Locate in this the first occurrence in the range [<code>start</code>, <code>start + length</code>) of the characters in <code>text</code>, using bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>The text to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>The offset at which searching will start. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>The number of characters to search </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of the start of <code>text</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001396">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03609">3609</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03598">indexOf()</a>, and <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a8cc509d7e8167d4f3cb54279c92f0140"></a><!-- doxytag: member="UnicodeString::indexOf" ref="a8cc509d7e8167d4f3cb54279c92f0140" args="(const UnicodeString &amp;text, int32_t start) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::indexOf </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>text</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>start</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>Locate in this the first occurrence of the characters in <code>text</code> starting at offset <code>start</code>, using bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>The text to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>The offset at which searching will start. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of the start of <code>text</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001395">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03602">3602</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03598">indexOf()</a>, and <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a95d26a26d753346832a09d8f3fbc5c21"></a><!-- doxytag: member="UnicodeString::indexOf" ref="a95d26a26d753346832a09d8f3fbc5c21" args="(const UnicodeString &amp;text) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::indexOf </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>text</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Locate in this the first occurrence of the characters in <code>text</code>, using bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>The text to search for. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of the start of <code>text</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001394">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03598">3598</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

<p>Referenced by <a class="el" href="unistr_8h_source.html#l03582">indexOf()</a>.</p>

</div>
</div>
<a class="anchor" id="a59e54dc726e396baab496e0fb6467d51"></a><!-- doxytag: member="UnicodeString::insert" ref="a59e54dc726e396baab496e0fb6467d51" args="(int32_t start, UChar32 srcChar)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::insert </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="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>srcChar</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Insert the code point <code>srcChar</code> into the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</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>start</em>&nbsp;</td><td>the offset at which the insertion occurs </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcChar</em>&nbsp;</td><td>the code point to insert </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#_stable001470">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04171">4171</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03813">replace()</a>.</p>

</div>
</div>
<a class="anchor" id="aad4e081871687bb09edfde9ef87f6ef0"></a><!-- doxytag: member="UnicodeString::insert" ref="aad4e081871687bb09edfde9ef87f6ef0" args="(int32_t start, UChar srcChar)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::insert </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">UChar&nbsp;</td>
          <td class="paramname"> <em>srcChar</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Insert the code unit <code>srcChar</code> into the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</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>start</em>&nbsp;</td><td>the offset at which the insertion occurs </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcChar</em>&nbsp;</td><td>the code unit to insert </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#_stable001469">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04166">4166</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="a97683dc8790f9310cec85002422540ab"></a><!-- doxytag: member="UnicodeString::insert" ref="a97683dc8790f9310cec85002422540ab" args="(int32_t start, const UChar *srcChars, int32_t srcLength)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::insert </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">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Insert the characters in <code>srcChars</code> into the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>. </p>
<p><code>srcChars</code> is not 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>the offset where the insertion begins </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcChars</em>&nbsp;</td><td>the source for the new characters </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of Unicode characters in srcChars. </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#_stable001468">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04160">4160</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="ac9388b206d00f8ca47d5dc417ef23211"></a><!-- doxytag: member="UnicodeString::insert" ref="ac9388b206d00f8ca47d5dc417ef23211" args="(int32_t start, const UChar *srcChars, int32_t srcStart, int32_t srcLength)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::insert </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">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Insert the characters in <code>srcChars</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>) into the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>. </p>
<p><code>srcChars</code> is not 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>the offset at which the insertion begins </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcChars</em>&nbsp;</td><td>the source for the new characters </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcChars</code> where new characters will be obtained </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcChars</code> in the insert string </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#_stable001467">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04153">4153</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa44156212bb0ce6418ccbf1976fe126e"></a><!-- doxytag: member="UnicodeString::insert" ref="aa44156212bb0ce6418ccbf1976fe126e" args="(int32_t start, const UnicodeString &amp;srcText)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::insert </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">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>srcText</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Insert the characters in <code>srcText</code> into the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>. </p>
<p><code>srcText</code> is not 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>the offset where the insertion begins </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcText</em>&nbsp;</td><td>the source for the new characters </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#_stable001466">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04148">4148</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a179a24c3973d134ca3e160a5def2ad1e"></a><!-- doxytag: member="UnicodeString::insert" ref="a179a24c3973d134ca3e160a5def2ad1e" args="(int32_t start, const UnicodeString &amp;srcText, int32_t srcStart, int32_t srcLength)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::insert </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">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>srcText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Insert the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>) into the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>. </p>
<p><code>srcText</code> is not 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>the offset where the insertion begins </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcText</em>&nbsp;</td><td>the source for the new characters </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcText</code> where new characters will be obtained </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcText</code> in the insert string </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#_stable001465">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04141">4141</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="af61191bafca3f7ed295a9eba2a1eb401"></a><!-- doxytag: member="UnicodeString::isBogus" ref="af61191bafca3f7ed295a9eba2a1eb401" 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> UnicodeString::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 string. </p>
<p>A bogus string has no value. It is different from an empty string. It can be used to indicate that no string value is available. <a class="el" href="classUnicodeString.html#ab60ed4d07f726d3cceb3964c6556a34b" title="Get a read/write pointer to the internal buffer.">getBuffer()</a> and <a class="el" href="classUnicodeString.html#a8aecf2249fdb51e284270a6f31e2cd75" title="Get a read-only pointer to the internal buffer, making sure that it is NUL-terminated...">getTerminatedBuffer()</a> return NULL, and <a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a> returns 0.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if the string is valid, FALSE otherwise </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeString.html#a0b796d590a302f57f5ba6bd7a8d245f2" title="Make this UnicodeString object invalid.">setToBogus()</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001441">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03322">3322</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>Referenced by <a class="el" href="unistr_8h_source.html#l03582">indexOf()</a>, <a class="el" href="unistr_8h_source.html#l03679">lastIndexOf()</a>, <a class="el" href="unistr_8h_source.html#l03367">operator==()</a>, <a class="el" href="unistr_8h_source.html#l04177">remove()</a>, and <a class="el" href="unistr_8h_source.html#l04205">truncate()</a>.</p>

</div>
</div>
<a class="anchor" id="aeefca846dd927d3db49c0cdc45ce744c"></a><!-- doxytag: member="UnicodeString::isEmpty" ref="aeefca846dd927d3db49c0cdc45ce744c" 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> UnicodeString::isEmpty </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 string is empty. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if this string contains 0 characters, FALSE otherwise. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001438">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03983">3983</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab10f3a578417944a4bf82fe251874ef1"></a><!-- doxytag: member="UnicodeString::lastIndexOf" ref="ab10f3a578417944a4bf82fe251874ef1" args="(UChar32 c, int32_t start, int32_t length) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::lastIndexOf </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>
        </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>Locate in this the last occurrence of the code point <code>c</code> in the range [<code>start</code>, <code>start + length</code>), using bitwise comparison. </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>The code point to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>the offset into this at which to start matching </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters in this to search </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of <code>c</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001419">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03718">3718</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa1d1bdeca0ea48faeff72e1fa0ac96c1"></a><!-- doxytag: member="UnicodeString::lastIndexOf" ref="aa1d1bdeca0ea48faeff72e1fa0ac96c1" args="(UChar c, int32_t start, int32_t length) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::lastIndexOf </td>
          <td>(</td>
          <td class="paramtype">UChar&nbsp;</td>
          <td class="paramname"> <em>c</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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>Locate in this the last occurrence of the BMP code point <code>c</code> in the range [<code>start</code>, <code>start + length</code>), using bitwise comparison. </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>The code unit to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>the offset into this at which to start matching </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters in this to search </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of <code>c</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001418">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03712">3712</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="af32e8297171296abc6f5f65a6532e982"></a><!-- doxytag: member="UnicodeString::lastIndexOf" ref="af32e8297171296abc6f5f65a6532e982" args="(UChar32 c, int32_t start) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::lastIndexOf </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>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>start</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>Locate in this the last occurrence of the code point <code>c</code> starting at offset <code>start</code>, using bitwise comparison. </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>The code point to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>The offset at which searching will start. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of <code>c</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001417">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03741">3741</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03708">lastIndexOf()</a>, and <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a4b36bd76b30462f824dbd50c83ddc1c7"></a><!-- doxytag: member="UnicodeString::lastIndexOf" ref="a4b36bd76b30462f824dbd50c83ddc1c7" args="(UChar c, int32_t start) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::lastIndexOf </td>
          <td>(</td>
          <td class="paramtype">UChar&nbsp;</td>
          <td class="paramname"> <em>c</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>start</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>Locate in this the last occurrence of the BMP code point <code>c</code> starting at offset <code>start</code>, using bitwise comparison. </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>The code unit to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>The offset at which searching will start. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of <code>c</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001416">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03734">3734</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a05607edd87bf7d42ba92437d4acd3201"></a><!-- doxytag: member="UnicodeString::lastIndexOf" ref="a05607edd87bf7d42ba92437d4acd3201" args="(UChar32 c) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::lastIndexOf </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> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Locate in this the last occurrence of the code point <code>c</code>, using bitwise comparison. </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>The code point to search for. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of <code>c</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001415">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03729">3729</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03708">lastIndexOf()</a>, and <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a1e47f5a816151974defc56044f69b5f0"></a><!-- doxytag: member="UnicodeString::lastIndexOf" ref="a1e47f5a816151974defc56044f69b5f0" args="(UChar c) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::lastIndexOf </td>
          <td>(</td>
          <td class="paramtype">UChar&nbsp;</td>
          <td class="paramname"> <em>c</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Locate in this the last occurrence of the BMP code point <code>c</code>, using bitwise comparison. </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>The code unit to search for. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of <code>c</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001414">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03725">3725</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a2b5ee35956d7270e661fb5f48aa153f6"></a><!-- doxytag: member="UnicodeString::lastIndexOf" ref="a2b5ee35956d7270e661fb5f48aa153f6" args="(const UChar *srcChars, int32_t srcStart, int32_t srcLength, int32_t start, int32_t length) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::lastIndexOf </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>Locate in this the last occurrence in the range [<code>start</code>, <code>start + length</code>) of the characters in <code>srcChars</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>), using bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>srcChars</em>&nbsp;</td><td>The text to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcChars</code> at which to start matching </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcChars</code> to match </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>the offset into this at which to start matching </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters in this to search </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of the start of <code>text</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001413">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a70730e2064ad98a0f5cd377145a4d978"></a><!-- doxytag: member="UnicodeString::lastIndexOf" ref="a70730e2064ad98a0f5cd377145a4d978" args="(const UChar *srcChars, int32_t srcLength, int32_t start, int32_t length) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::lastIndexOf </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>Locate in this the last occurrence in the range [<code>start</code>, <code>start + length</code>) of the characters in <code>srcChars</code>, using bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>srcChars</em>&nbsp;</td><td>The text to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcChars</code> </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>The offset at which searching will start. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>The number of characters to search </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of the start of <code>srcChars</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001412">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03664">3664</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03708">lastIndexOf()</a>.</p>

</div>
</div>
<a class="anchor" id="a888a5eef6a80755f1e3455b6c5fb40f1"></a><!-- doxytag: member="UnicodeString::lastIndexOf" ref="a888a5eef6a80755f1e3455b6c5fb40f1" args="(const UChar *srcChars, int32_t srcLength, int32_t start) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::lastIndexOf </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>start</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>Locate in this the last occurrence of the characters in <code>srcChars</code> starting at offset <code>start</code>, using bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>srcChars</em>&nbsp;</td><td>The text to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcChars</code> to match </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>the offset into this at which to start matching </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of the start of <code>text</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001411">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03671">3671</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03708">lastIndexOf()</a>, and <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a819576d305c2d69e6a8aa1d47dd27635"></a><!-- doxytag: member="UnicodeString::lastIndexOf" ref="a819576d305c2d69e6a8aa1d47dd27635" args="(const UnicodeString &amp;srcText, int32_t srcStart, int32_t srcLength, int32_t start, int32_t length) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::lastIndexOf </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>srcText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>Locate in this the last occurrence in the range [<code>start</code>, <code>start + length</code>) of the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>), using bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>srcText</em>&nbsp;</td><td>The text to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcText</code> at which to start matching </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcText</code> to match </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>the offset into this at which to start matching </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters in this to search </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of the start of <code>text</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001410">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03679">3679</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03322">isBogus()</a>, and <a class="el" href="unistr_8h_source.html#l03708">lastIndexOf()</a>.</p>

</div>
</div>
<a class="anchor" id="a22eb2250c71d81826e74ec80b7efd71f"></a><!-- doxytag: member="UnicodeString::lastIndexOf" ref="a22eb2250c71d81826e74ec80b7efd71f" args="(const UnicodeString &amp;text, int32_t start, int32_t length) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::lastIndexOf </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>text</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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>Locate in this the last occurrence in the range [<code>start</code>, <code>start + length</code>) of the characters in <code>text</code>, using bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>The text to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>The offset at which searching will start. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>The number of characters to search </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of the start of <code>text</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001409">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03695">3695</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03708">lastIndexOf()</a>, and <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a24b0b6c1064d0c2c7a96bf67f3704390"></a><!-- doxytag: member="UnicodeString::lastIndexOf" ref="a24b0b6c1064d0c2c7a96bf67f3704390" args="(const UnicodeString &amp;text, int32_t start) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::lastIndexOf </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>text</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>start</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>Locate in this the last occurrence of the characters in <code>text</code> starting at offset <code>start</code>, using bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>The text to search for. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>The offset at which searching will start. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of the start of <code>text</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001408">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03701">3701</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03708">lastIndexOf()</a>, and <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="ac4b5689a7a60e28378dd6bf9f06d8681"></a><!-- doxytag: member="UnicodeString::lastIndexOf" ref="ac4b5689a7a60e28378dd6bf9f06d8681" args="(const UnicodeString &amp;text) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::lastIndexOf </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>text</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Locate in this the last occurrence of the characters in <code>text</code>, using bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>The text to search for. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The offset into this of the start of <code>text</code>, or -1 if not found. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001407">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03708">3708</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

<p>Referenced by <a class="el" href="unistr_8h_source.html#l03664">lastIndexOf()</a>.</p>

</div>
</div>
<a class="anchor" id="ac4cf80391a0e523c27aacaba796aede6"></a><!-- doxytag: member="UnicodeString::length" ref="ac4cf80391a0e523c27aacaba796aede6" args="(void) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::length </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>Return the length of the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object. </p>
<p>The length is the number of UChar code units are in the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>. If you want the number of code points, please use <a class="el" href="classUnicodeString.html#a8bdc18ea800dbf166cda5aba2d63612f" title="Count Unicode code points in the length UChar code units of the string.">countChar32()</a>. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the length of the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeString.html#a8bdc18ea800dbf166cda5aba2d63612f" title="Count Unicode code points in the length UChar code units of the string.">countChar32</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001435">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Reimplemented from <a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0">Replaceable</a>.</p>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03310">3310</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>Referenced by <a class="el" href="unistr_8h_source.html#l04094">append()</a>, <a class="el" href="unistr_8h_source.html#l03524">caseCompare()</a>, <a class="el" href="unistr_8h_source.html#l03946">char32At()</a>, <a class="el" href="unistr_8h_source.html#l03401">compare()</a>, <a class="el" href="normlzr_8h_source.html#l00809">Normalizer::compare()</a>, <a class="el" href="unistr_8h_source.html#l03462">compareCodePointOrder()</a>, <a class="el" href="unistr_8h_source.html#l03769">endsWith()</a>, <a class="el" href="unistr_8h_source.html#l03867">findAndReplace()</a>, <a class="el" href="unistr_8h_source.html#l03971">getChar32Limit()</a>, <a class="el" href="unistr_8h_source.html#l03960">getChar32Start()</a>, <a class="el" href="unistr_8h_source.html#l04020">getTerminatedBuffer()</a>, <a class="el" href="unistr_8h_source.html#l03598">indexOf()</a>, <a class="el" href="unistr_8h_source.html#l04148">insert()</a>, <a class="el" href="normlzr_8h_source.html#l00785">Normalizer::isNormalized()</a>, <a class="el" href="unistr_8h_source.html#l03671">lastIndexOf()</a>, <a class="el" href="unistr_8h_source.html#l04128">operator+=()</a>, <a class="el" href="unistr_8h_source.html#l03389">operator&lt;()</a>, <a class="el" href="unistr_8h_source.html#l03397">operator&lt;=()</a>, <a class="el" href="unistr_8h_source.html#l04039">operator=()</a>, <a class="el" href="unistr_8h_source.html#l03367">operator==()</a>, <a class="el" href="unistr_8h_source.html#l03385">operator&gt;()</a>, <a class="el" href="unistr_8h_source.html#l03393">operator&gt;=()</a>, <a class="el" href="normlzr_8h_source.html#l00761">Normalizer::quickCheck()</a>, <a class="el" href="unistr_8h_source.html#l03807">replace()</a>, <a class="el" href="unistr_8h_source.html#l03853">replaceBetween()</a>, <a class="el" href="unistr_8h_source.html#l04220">reverse()</a>, <a class="el" href="translit_8h_source.html#l01300">Transliterator::setID()</a>, <a class="el" href="unistr_8h_source.html#l04047">setTo()</a>, <a class="el" href="unistr_8h_source.html#l03748">startsWith()</a>, and <a class="el" href="unistr_8h_source.html#l04205">truncate()</a>.</p>

</div>
</div>
<a class="anchor" id="a29075d1d1a125a472dea09b13da3c80d"></a><!-- doxytag: member="UnicodeString::moveIndex32" ref="a29075d1d1a125a472dea09b13da3c80d" args="(int32_t index, int32_t delta) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t UnicodeString::moveIndex32 </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>delta</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>Move the code unit index along the string by delta code points. </p>
<p>Interpret the input index as a code unit-based offset into the string, move the index forward or backward by delta code points, and return the resulting index. The input index should point to the first code unit of a code point, if there is more than one.</p>
<p>Both input and output indexes are code unit-based as for all string indexes/offsets in ICU (and other libraries, like MBCS char*). If delta&lt;0 then the index is moved backward (toward the start of the string). If delta&gt;0 then the index is moved forward (toward the end of the string).</p>
<p>This behaves like CharacterIterator::move32(delta, kCurrent).</p>
<p>Behavior for out-of-bounds indexes: <code>moveIndex32</code> pins the input index to 0..<a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a>, i.e., if the input index&lt;0 then it is pinned to 0; if it is index&gt;<a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a> then it is pinned to <a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a>. Afterwards, the index is moved by <code>delta</code> code points forward or backward, but no further backward than to 0 and no further forward than to <a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a>. The resulting index return value will be in between 0 and <a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a>, inclusively.</p>
<p>Examples: </p>
<pre>
 // s has code points 'a' U+10000 'b' U+10ffff U+2029
 <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> s=UNICODE_STRING("a\\U00010000b\\U0010ffff\\u2029", 31).<a class="el" href="classUnicodeString.html#abb3f5f6eb82c5689fcfeb8f79d5ca2bf" title="Unescape a string of characters and return a string containing the result.">unescape()</a>;</pre><pre> // initial index: position of U+10000
 int32_t index=1;</pre><pre> // the following examples will all result in index==4, position of U+10ffff</pre><pre> // skip 2 code points from some position in the string
 index=s.moveIndex32(index, 2); // skips U+10000 and 'b'</pre><pre> // go to the 3rd code point from the start of s (0-based)
 index=s.moveIndex32(0, 3); // skips 'a', U+10000, and 'b'</pre><pre> // go to the next-to-last code point of s
 index=s.moveIndex32(s.length(), -2); // backward-skips U+2029 and U+10ffff
 </pre><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>input code unit index </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>delta</em>&nbsp;</td><td>(signed) code point count to move the index forward or backward in the string </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the resulting code unit index </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="a77b6ddf0e458fa0c1c9378484305f695"></a><!-- doxytag: member="UnicodeString::operator!=" ref="a77b6ddf0e458fa0c1c9378484305f695" args="(const UnicodeString &amp;text) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeString::operator!= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>text</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Inequality operator. </p>
<p>Performs only bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>The <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> to compare to this one. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>FALSE if <code>text</code> contains the same characters as this one, TRUE otherwise. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001360">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03381">3381</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="a7091ecbd1353a22279a93d95e05da385"></a><!-- doxytag: member="UnicodeString::operator+=" ref="a7091ecbd1353a22279a93d95e05da385" args="(const UnicodeString &amp;srcText)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::operator+= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>srcText</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Append operator. </p>
<p>Append the characters in <code>srcText</code> to the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object at offset <code>start</code>. <code>srcText</code> is not 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>srcText</em>&nbsp;</td><td>the source for the new characters </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#_stable001458">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04137">4137</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a6e1482ab21f7ef9e5439981bad06f1ee"></a><!-- doxytag: member="UnicodeString::operator+=" ref="a6e1482ab21f7ef9e5439981bad06f1ee" args="(UChar32 ch)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::operator+= </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>ch</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Append operator. </p>
<p>Append the code point <code>ch</code> to the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ch</em>&nbsp;</td><td>the code point to be appended </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#_stable001457">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04132">4132</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l04094">append()</a>.</p>

</div>
</div>
<a class="anchor" id="a3ac2e89f8f74c45ff13bf71e6062734b"></a><!-- doxytag: member="UnicodeString::operator+=" ref="a3ac2e89f8f74c45ff13bf71e6062734b" args="(UChar ch)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::operator+= </td>
          <td>(</td>
          <td class="paramtype">UChar&nbsp;</td>
          <td class="paramname"> <em>ch</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Append operator. </p>
<p>Append the code unit <code>ch</code> to the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ch</em>&nbsp;</td><td>the code unit to be appended </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#_stable001456">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04128">4128</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

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

<p>Less than operator. </p>
<p>Performs only bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>The <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> to compare to this one. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if the characters in this are bitwise less than the characters in <code>text</code>, FALSE otherwise </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001362">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03389">3389</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

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

<p>Less than or equal operator. </p>
<p>Performs only bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>The <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> to compare to this one. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if the characters in this are bitwise less than or equal to the characters in <code>text</code>, FALSE otherwise </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001364">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03397">3397</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a0d1a2c1f297ceab74014d51e45c421f4"></a><!-- doxytag: member="UnicodeString::operator=" ref="a0d1a2c1f297ceab74014d51e45c421f4" args="(UChar32 ch)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::operator= </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>ch</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assignment operator. </p>
<p>Replace the characters in this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> with the code point <code>ch</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>ch</em>&nbsp;</td><td>the code point to replace </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#_stable001445">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04043">4043</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>, and <a class="el" href="unistr_8h_source.html#l03813">replace()</a>.</p>

</div>
</div>
<a class="anchor" id="a1d75d4701b858d95a49dbc07f8d1ba6c"></a><!-- doxytag: member="UnicodeString::operator=" ref="a1d75d4701b858d95a49dbc07f8d1ba6c" args="(UChar ch)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::operator= </td>
          <td>(</td>
          <td class="paramtype">UChar&nbsp;</td>
          <td class="paramname"> <em>ch</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assignment operator. </p>
<p>Replace the characters in this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> with the code unit <code>ch</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>ch</em>&nbsp;</td><td>the code unit to replace </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#_stable001444">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04039">4039</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

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

<p>Assignment operator. </p>
<p>Replace the characters in this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> with the characters from <code>srcText</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>srcText</em>&nbsp;</td><td>The text containing the characters to replace </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#_stable001442">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

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

<p>Equality operator. </p>
<p>Performs only bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>The <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> to compare to this one. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if <code>text</code> contains the same characters as this one, FALSE otherwise. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001359">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03367">3367</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03322">isBogus()</a>, and <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

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

<p>Greater than operator. </p>
<p>Performs only bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>The <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> to compare to this one. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if the characters in this are bitwise greater than the characters in <code>text</code>, FALSE otherwise </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="unistr_8h_source.html#l03385">3385</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

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

<p>Greater than or equal operator. </p>
<p>Performs only bitwise comparison. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>The <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> to compare to this one. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if the characters in this are bitwise greater than or equal to the characters in <code>text</code>, FALSE otherwise </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001363">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03393">3393</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="acc98e688603bf1b2dbfd6303ec8783f5"></a><!-- doxytag: member="UnicodeString::operator[]" ref="acc98e688603bf1b2dbfd6303ec8783f5" args="(int32_t offset) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">UChar UnicodeString::operator[] </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>offset</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the code unit at offset <code>offset</code>. </p>
<p>If the offset is not valid (0..<a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a>-1) then U+ffff is returned. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>offset</em>&nbsp;</td><td>a valid offset into the text </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the code unit at offset <code>offset</code> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001421">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03942">3942</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="aedf7e46ed1d04c290e7a07f995fcab93"></a><!-- doxytag: member="UnicodeString::padLeading" ref="aedf7e46ed1d04c290e7a07f995fcab93" args="(int32_t targetLength, UChar padChar=0x0020)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeString::padLeading </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>targetLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">UChar&nbsp;</td>
          <td class="paramname"> <em>padChar</em> = <code>0x0020</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Pad the start of this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> with the character <code>padChar</code>. </p>
<p>If the length of this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> is less than targetLength, <a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a> - targetLength copies of padChar will be added to the beginning of this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>targetLength</em>&nbsp;</td><td>the desired length of the string </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>padChar</em>&nbsp;</td><td>the character to use for padding. Defaults to space (U+0020) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if the text was padded, FALSE otherwise. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001488">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="af7c61d0795c4d70b37dc6388fdd30c60"></a><!-- doxytag: member="UnicodeString::padTrailing" ref="af7c61d0795c4d70b37dc6388fdd30c60" args="(int32_t targetLength, UChar padChar=0x0020)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeString::padTrailing </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>targetLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">UChar&nbsp;</td>
          <td class="paramname"> <em>padChar</em> = <code>0x0020</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Pad the end of this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> with the character <code>padChar</code>. </p>
<p>If the length of this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> is less than targetLength, <a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a> - targetLength copies of padChar will be added to the end of this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>targetLength</em>&nbsp;</td><td>the desired length of the string </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>padChar</em>&nbsp;</td><td>the character to use for padding. Defaults to space (U+0020) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if the text was padded, FALSE otherwise. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001489">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="aa38976ed70bda538598da31a4631387d"></a><!-- doxytag: member="UnicodeString::releaseBuffer" ref="aa38976ed70bda538598da31a4631387d" args="(int32_t newLength=&#45;1)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void UnicodeString::releaseBuffer </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>newLength</em> = <code>-1</code></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Release a read/write buffer on a <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object with an "open" getBuffer(minCapacity). </p>
<p>This function must be called in a matched pair with getBuffer(minCapacity). releaseBuffer(newLength) must be called if and only if a getBuffer(minCapacity) is "open".</p>
<p>It will set the string length to newLength, at most to the current capacity. If newLength==-1 then it will set the length according to the first NUL in the buffer, or to the capacity if there is no NUL.</p>
<p>After calling releaseBuffer(newLength) the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> is back to normal operation.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>newLength</em>&nbsp;</td><td>the new length of the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object; defaults to the current capacity if newLength is greater than that; if newLength==-1, it defaults to u_strlen(buffer) but not more than the current capacity of the string</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeString.html#ab60ed4d07f726d3cceb3964c6556a34b" title="Get a read/write pointer to the internal buffer.">getBuffer(int32_t minCapacity)</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001503">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="ab54182e0d304a37c883d8c74df6139df"></a><!-- doxytag: member="UnicodeString::remove" ref="ab54182e0d304a37c883d8c74df6139df" args="(int32_t start, int32_t length=(int32_t) INT32_MAX)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::remove </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</em> = <code>(int32_t)INT32_MAX</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Remove the characters in the range [<code>start</code>, <code>start + length</code>) from the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>the offset of the first character to remove </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters to remove </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#_stable001486">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04189">4189</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="umachine_8h_source.html#l00140">INT32_MAX</a>, and <a class="el" href="utypes_8h_source.html#l00238">NULL</a>.</p>

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

<p>Remove all characters from the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object. </p>
<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#_stable001485">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04177">4177</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03322">isBogus()</a>.</p>

</div>
</div>
<a class="anchor" id="a6a901da92dd8e9bc1e1f168033175240"></a><!-- doxytag: member="UnicodeString::removeBetween" ref="a6a901da92dd8e9bc1e1f168033175240" args="(int32_t start, int32_t limit=(int32_t) INT32_MAX)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::removeBetween </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>limit</em> = <code>(int32_t)INT32_MAX</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Remove the characters in the range [<code>start</code>, <code>limit</code>) from the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>the offset of the first character to remove </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>limit</em>&nbsp;</td><td>the offset immediately following the range to remove </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#_stable001487">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04200">4200</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

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

</div>
</div>
<a class="anchor" id="aa363771bfbdcb732ceccffbc2030b5ed"></a><!-- doxytag: member="UnicodeString::replace" ref="aa363771bfbdcb732ceccffbc2030b5ed" args="(int32_t start, int32_t length, UChar32 srcChar)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::replace </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">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="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>srcChar</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Replace the characters in the range [<code>start</code>, <code>start + length</code>) with the code point <code>srcChar</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>start</em>&nbsp;</td><td>the offset at which the replace operation begins </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters to replace. The character at <code>start + length</code> is not modified. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcChar</em>&nbsp;</td><td>the new code point </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#_stable001476">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03842">3842</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="umachine_8h_source.html#l00202">FALSE</a>, <a class="el" href="utf16_8h_source.html#l00302">U16_APPEND</a>, and <a class="el" href="utf16_8h_source.html#l00138">U16_MAX_LENGTH</a>.</p>

</div>
</div>
<a class="anchor" id="af048ddbf8ecdcb90105b90f50375209c"></a><!-- doxytag: member="UnicodeString::replace" ref="af048ddbf8ecdcb90105b90f50375209c" args="(int32_t start, int32_t length, UChar srcChar)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::replace </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">UChar&nbsp;</td>
          <td class="paramname"> <em>srcChar</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Replace the characters in the range [<code>start</code>, <code>start + length</code>) with the code unit <code>srcChar</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>start</em>&nbsp;</td><td>the offset at which the replace operation begins </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters to replace. The character at <code>start + length</code> is not modified. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcChar</em>&nbsp;</td><td>the new code unit </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#_stable001475">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03836">3836</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="a250f55bd8fbd8490852a0c90c5bcec4f"></a><!-- doxytag: member="UnicodeString::replace" ref="a250f55bd8fbd8490852a0c90c5bcec4f" args="(int32_t start, int32_t length, const UChar *srcChars, int32_t srcLength)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::replace </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Replace the characters in the range [<code>start</code>, <code>start + length</code>) with the characters in <code>srcChars</code>. </p>
<p><code>srcChars</code> is not 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>the offset at which the replace operation begins </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>number of characters to replace. The character at <code>start + length</code> is not modified. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcChars</em>&nbsp;</td><td>the source for the new characters </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of Unicode characters in srcChars </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#_stable001474">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03821">3821</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="a67b906be4fc94fe57feb34ab10355922"></a><!-- doxytag: member="UnicodeString::replace" ref="a67b906be4fc94fe57feb34ab10355922" args="(int32_t start, int32_t length, const UChar *srcChars, int32_t srcStart, int32_t srcLength)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::replace </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Replace the characters in the range [<code>start</code>, <code>start + length</code>) with the characters in <code>srcChars</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>). </p>
<p><code>srcChars</code> is not 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>the offset at which the replace operation begins </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters to replace. The character at <code>start + length</code> is not modified. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcChars</em>&nbsp;</td><td>the source for the new characters </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcChars</code> where new characters will be obtained </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcChars</code> in the replace string </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#_stable001473">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03828">3828</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="a53f142e2db860dcb7d9544b01904eb8c"></a><!-- doxytag: member="UnicodeString::replace" ref="a53f142e2db860dcb7d9544b01904eb8c" args="(int32_t start, int32_t length, const UnicodeString &amp;srcText)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::replace </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>srcText</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Replace the characters in the range [<code>start</code>, <code>start + length</code>) with the characters in <code>srcText</code>. </p>
<p><code>srcText</code> is not 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>the offset at which the replace operation begins </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters to replace. The character at <code>start + length</code> is not modified. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcText</em>&nbsp;</td><td>the source for the new characters </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#_stable001472">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03807">3807</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a9a321102fc38bec175fa21b1f1aa2476"></a><!-- doxytag: member="UnicodeString::replace" ref="a9a321102fc38bec175fa21b1f1aa2476" args="(int32_t start, int32_t length, const UnicodeString &amp;srcText, int32_t srcStart, int32_t srcLength)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::replace </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</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>srcText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Replace the characters in the range [<code>start</code>, <code>start + length</code>) with the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>). </p>
<p><code>srcText</code> is not 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>the offset at which the replace operation begins </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters to replace. The character at <code>start + length</code> is not modified. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcText</em>&nbsp;</td><td>the source for the new characters </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcText</code> where new characters will be obtained </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcText</code> in the replace string </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#_stable001471">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03813">3813</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>Referenced by <a class="el" href="unistr_8h_source.html#l04171">insert()</a>, <a class="el" href="unistr_8h_source.html#l04043">operator=()</a>, and <a class="el" href="unistr_8h_source.html#l04087">setTo()</a>.</p>

</div>
</div>
<a class="anchor" id="a8cb0ad3a526ebb049c25fc541bac2543"></a><!-- doxytag: member="UnicodeString::replaceBetween" ref="a8cb0ad3a526ebb049c25fc541bac2543" args="(int32_t start, int32_t limit, const UnicodeString &amp;srcText, int32_t srcStart, int32_t srcLimit)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::replaceBetween </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>limit</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>srcText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLimit</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Replace the characters in the range [<code>start</code>, <code>limit</code>) with the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcLimit</code>). </p>
<p><code>srcText</code> is not 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>the offset at which the replace operation begins </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>limit</em>&nbsp;</td><td>the offset immediately following the replace range </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcText</em>&nbsp;</td><td>the source for the new characters </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcChars</code> where new characters will be obtained </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLimit</em>&nbsp;</td><td>the offset immediately following the range to copy in <code>srcText</code> </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#_stable001478">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03859">3859</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="a3e971aecee8c927be11601d022d3a2a4"></a><!-- doxytag: member="UnicodeString::replaceBetween" ref="a3e971aecee8c927be11601d022d3a2a4" args="(int32_t start, int32_t limit, const UnicodeString &amp;srcText)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::replaceBetween </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>limit</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>srcText</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Replace the characters in the range [<code>start</code>, <code>limit</code>) with the characters in <code>srcText</code>. </p>
<p><code>srcText</code> is not 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>the offset at which the replace operation begins </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>limit</em>&nbsp;</td><td>the offset immediately following the replace range </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcText</em>&nbsp;</td><td>the source for the new characters </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#_stable001477">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03853">3853</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="afbc7e70810c42b8c5d28606124826b3f"></a><!-- doxytag: member="UnicodeString::reverse" ref="afbc7e70810c42b8c5d28606124826b3f" args="(int32_t start, int32_t length)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::reverse </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">int32_t&nbsp;</td>
          <td class="paramname"> <em>length</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reverse the range [<code>start</code>, <code>start + length</code>) in this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>. </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>the start of the range to reverse </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the number of characters to to reverse </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#_stable001493">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04224">4224</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

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

<p>Reverse this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> in place. </p>
<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#_stable001492">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04220">4220</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a695479485a3b9f1fcaa25313ea87a83c"></a><!-- doxytag: member="UnicodeString::setCharAt" ref="a695479485a3b9f1fcaa25313ea87a83c" args="(int32_t offset, UChar ch)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a>&amp; UnicodeString::setCharAt </td>
          <td>(</td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">UChar&nbsp;</td>
          <td class="paramname"> <em>ch</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the character at the specified offset to the specified character. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>offset</em>&nbsp;</td><td>A valid offset into the text of the character to set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ch</em>&nbsp;</td><td>The new character </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#_stable001455">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a0fcc4d2faad3930832a98ae820779264"></a><!-- doxytag: member="UnicodeString::setTo" ref="a0fcc4d2faad3930832a98ae820779264" args="(UChar *buffer, int32_t buffLength, int32_t buffCapacity)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a>&amp; UnicodeString::setTo </td>
          <td>(</td>
          <td class="paramtype">UChar *&nbsp;</td>
          <td class="paramname"> <em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>buffLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>buffCapacity</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Aliasing <a class="el" href="classUnicodeString.html#a3897abda046dd38819aa8f2c8078861e" title="Set the text in the UnicodeString object to the characters in srcText in the range...">setTo()</a> function, analogous to the writable-aliasing UChar* constructor. </p>
<p>The text will be used for the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object, but it will not be released when the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> is destroyed. This has write-through semantics: For as long as the capacity of the buffer is sufficient, write operations will directly affect the buffer. When more capacity is necessary, then a new buffer will be allocated and the contents copied as with regularly constructed strings. In an assignment to another <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>, the buffer will be copied. The extract(UChar *dst) function detects whether the dst pointer is the same as the string buffer itself and will in this case not copy the contents.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>The characters to alias for the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buffLength</em>&nbsp;</td><td>The number of Unicode characters in <code>buffer</code> to alias. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buffCapacity</em>&nbsp;</td><td>The size of <code>buffer</code> in UChars. </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#_stable001453">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a98527226ab905a05df3e73082a0af3e3"></a><!-- doxytag: member="UnicodeString::setTo" ref="a98527226ab905a05df3e73082a0af3e3" args="(UBool isTerminated, const UChar *text, int32_t textLength)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a>&amp; UnicodeString::setTo </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a>&nbsp;</td>
          <td class="paramname"> <em>isTerminated</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>text</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>textLength</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Aliasing <a class="el" href="classUnicodeString.html#a3897abda046dd38819aa8f2c8078861e" title="Set the text in the UnicodeString object to the characters in srcText in the range...">setTo()</a> function, analogous to the readonly-aliasing UChar* constructor. </p>
<p>The text will be used for the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object, but it will not be released when the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> is destroyed. This has copy-on-write semantics: When the string is modified, then the buffer is first copied into newly allocated memory. The aliased buffer is never modified. In an assignment to another <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>, the text will be aliased again, so that both strings then alias the same readonly-text.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>isTerminated</em>&nbsp;</td><td>specifies if <code>text</code> is <code>NUL</code>-terminated. This must be true if <code>textLength==-1</code>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>The characters to alias for the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>textLength</em>&nbsp;</td><td>The number of Unicode characters in <code>text</code> to alias. If -1, then this constructor will determine the length by calling <code><a class="el" href="group__ustring__ustrlen.html#gac4d8a5581fc5bde71d62ebd0a7a84ec5" title="Determine the length of an array of UChar.">u_strlen()</a></code>. </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#_stable001452">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a79ab8bb668477b4ccebbdc894c1d321b"></a><!-- doxytag: member="UnicodeString::setTo" ref="a79ab8bb668477b4ccebbdc894c1d321b" args="(UChar32 srcChar)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::setTo </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>&nbsp;</td>
          <td class="paramname"> <em>srcChar</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the characters in the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object to the code point <code>srcChar</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>srcChar</em>&nbsp;</td><td>the code point which becomes the UnicodeString's character content </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#_stable001451">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04087">4087</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>, and <a class="el" href="unistr_8h_source.html#l03813">replace()</a>.</p>

</div>
</div>
<a class="anchor" id="a56c98d01627a9407cdb4605242ce4d73"></a><!-- doxytag: member="UnicodeString::setTo" ref="a56c98d01627a9407cdb4605242ce4d73" args="(UChar srcChar)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::setTo </td>
          <td>(</td>
          <td class="paramtype">UChar&nbsp;</td>
          <td class="paramname"> <em>srcChar</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the characters in the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object to the code unit <code>srcChar</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>srcChar</em>&nbsp;</td><td>the code unit which becomes the UnicodeString's character content </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#_stable001450">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04080">4080</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a5bae314691db9ce0a805343bde6ea2b3"></a><!-- doxytag: member="UnicodeString::setTo" ref="a5bae314691db9ce0a805343bde6ea2b3" args="(const UChar *srcChars, int32_t srcLength)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::setTo </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the characters in the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object to the characters in <code>srcChars</code>. </p>
<p><code>srcChars</code> is not 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>srcChars</em>&nbsp;</td><td>the source for the new characters </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of Unicode characters in srcChars. </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#_stable001449">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04072">4072</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

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

<p>Set the text in the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object to the characters in <code>srcText</code>. </p>
<p><code>srcText</code> is not 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>srcText</em>&nbsp;</td><td>the source for the new characters </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#_stable001448">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04065">4065</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="ac38d68fb81c7421b654d3287d9d54206"></a><!-- doxytag: member="UnicodeString::setTo" ref="ac38d68fb81c7421b654d3287d9d54206" args="(const UnicodeString &amp;srcText, int32_t srcStart, int32_t srcLength)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::setTo </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>srcText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the text in the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object to the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</code>). </p>
<p><code>srcText</code> is not 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>srcText</em>&nbsp;</td><td>the source for the new characters </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcText</code> where new characters will be obtained </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcText</code> in the replace string. </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#_stable001447">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04047">4047</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a3897abda046dd38819aa8f2c8078861e"></a><!-- doxytag: member="UnicodeString::setTo" ref="a3897abda046dd38819aa8f2c8078861e" args="(const UnicodeString &amp;srcText, int32_t srcStart)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> &amp; UnicodeString::setTo </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>srcText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the text in the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object to the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcText.length()</code>). </p>
<p><code>srcText</code> is not 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>srcText</em>&nbsp;</td><td>the source for the new characters </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcText</code> where new characters will be obtained </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#_stable001446">Stable:</a></b></dt><dd>ICU 2.2 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04056">4056</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

</div>
</div>
<a class="anchor" id="a0b796d590a302f57f5ba6bd7a8d245f2"></a><!-- doxytag: member="UnicodeString::setToBogus" ref="a0b796d590a302f57f5ba6bd7a8d245f2" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void UnicodeString::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="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> object invalid. </p>
<p>The string will test TRUE with <a class="el" href="classUnicodeString.html#af61191bafca3f7ed295a9eba2a1eb401" title="Determine if this object contains a valid string.">isBogus()</a>.</p>
<p>A bogus string has no value. It is different from an empty string. It can be used to indicate that no string value is available. <a class="el" href="classUnicodeString.html#ab60ed4d07f726d3cceb3964c6556a34b" title="Get a read/write pointer to the internal buffer.">getBuffer()</a> and <a class="el" href="classUnicodeString.html#a8aecf2249fdb51e284270a6f31e2cd75" title="Get a read-only pointer to the internal buffer, making sure that it is NUL-terminated...">getTerminatedBuffer()</a> return NULL, and <a class="el" href="classReplaceable.html#a81c2af838cfaf3c2a0d46b7fa727e8d0" title="Returns the number of 16-bit code units in the text.">length()</a> returns 0.</p>
<p>This utility function is used throughout the <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> implementation to indicate that a <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</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>
<p>The following methods, and no others, will clear a string object's bogus flag:</p>
<ul>
<li><a class="el" href="classUnicodeString.html#aee0fec9568ee616e330627bf371eda8d" title="Remove all characters from the UnicodeString object.">remove()</a></li>
<li>remove(0, INT32_MAX)</li>
<li>truncate(0)</li>
<li><a class="el" href="classUnicodeString.html#a5dd1ec62e48abc757646189cbcf2baa7" title="Assignment operator.">operator=()</a> (assignment operator)</li>
<li>setTo(...)</li>
</ul>
<p>The simplest ways to turn a bogus string into an empty one is to use the <a class="el" href="classUnicodeString.html#aee0fec9568ee616e330627bf371eda8d" title="Remove all characters from the UnicodeString object.">remove()</a> function. Examples for other functions that are equivalent to "set to empty string": </p>
<div class="fragment"><pre class="fragment"> <span class="keywordflow">if</span>(s.isBogus()) {
   s.remove();           <span class="comment">// set to an empty string (remove all), or</span>
   s.remove(0, <a class="code" href="umachine_8h.html#a181807730d4a375f848ba139813ce04f" title="The largest value a 32 bit signed integer can hold.">INT32_MAX</a>); <span class="comment">// set to an empty string (remove all), or</span>
   s.truncate(0);        <span class="comment">// set to an empty string (complete truncation), or</span>
   s=<a class="code" href="classUnicodeString.html#a0104e7a1ca98d59c902a7220dd12fc3d" title="Construct an empty UnicodeString.">UnicodeString</a>();    <span class="comment">// assign an empty string, or</span>
   s.setTo((<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a>)-1); <span class="comment">// set to a pseudo code point that is out of range, or</span>
   <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac" title="Define UChar to be wchar_t if that is 16 bits wide; always assumed to be unsigned...">UChar</a> nul=0;
   s.setTo(&amp;nul, 0);     <span class="comment">// set to an empty C Unicode string</span>
 }
</pre></div><dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeString.html#af61191bafca3f7ed295a9eba2a1eb401" title="Determine if this object contains a valid string.">isBogus()</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001454">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a9f2cd1d245ca229be31991f3ed9d835a"></a><!-- doxytag: member="UnicodeString::startsWith" ref="a9f2cd1d245ca229be31991f3ed9d835a" args="(const UChar *srcChars, int32_t srcStart, int32_t srcLength) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeString::startsWith </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</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>Determine if this ends with the characters in <code>srcChars</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</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>srcChars</em>&nbsp;</td><td>The characters to match. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcText</code> to start matching </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcChars</code> to match </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if this ends with the characters in <code>srcChars</code>, FALSE otherwise </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001389">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03763">3763</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="ad12b7ef01da4555975a5cf9a4600d23e"></a><!-- doxytag: member="UnicodeString::startsWith" ref="ad12b7ef01da4555975a5cf9a4600d23e" args="(const UChar *srcChars, int32_t srcLength) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeString::startsWith </td>
          <td>(</td>
          <td class="paramtype">const UChar *&nbsp;</td>
          <td class="paramname"> <em>srcChars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</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>Determine if this starts with the characters in <code>srcChars</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>srcChars</em>&nbsp;</td><td>The characters to match. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcChars</code> </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if this starts with the characters in <code>srcChars</code>, FALSE otherwise </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001388">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03758">3758</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

</div>
</div>
<a class="anchor" id="afd20f639672a52e36825458462ddcd7f"></a><!-- doxytag: member="UnicodeString::startsWith" ref="afd20f639672a52e36825458462ddcd7f" args="(const UnicodeString &amp;srcText, int32_t srcStart, int32_t srcLength) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeString::startsWith </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>srcText</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcStart</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&nbsp;</td>
          <td class="paramname"> <em>srcLength</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>Determine if this starts with the characters in <code>srcText</code> in the range [<code>srcStart</code>, <code>srcStart + srcLength</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>srcText</em>&nbsp;</td><td>The text to match. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcStart</em>&nbsp;</td><td>the offset into <code>srcText</code> to start matching </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srcLength</em>&nbsp;</td><td>the number of characters in <code>srcText</code> to match </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if this starts with the characters in <code>text</code>, FALSE otherwise </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001387">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l03752">3752</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

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

<p>Determine if this starts with the characters in <code>text</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>text</em>&nbsp;</td><td>The text to match. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if this starts with the characters in <code>text</code>, FALSE otherwise </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>Definition at line <a class="el" href="unistr_8h_source.html#l03748">3748</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="unistr_8h_source.html#l03401">compare()</a>, and <a class="el" href="unistr_8h_source.html#l03310">length()</a>.</p>

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

<p>Convert the characters in this to lower case following the conventions of a specific locale. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>locale</em>&nbsp;</td><td>The locale containing the conventions to use. </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#_stable001497">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a6276e2a7136f47e0294f6b672d9bfe02"></a><!-- doxytag: member="UnicodeString::toLower" ref="a6276e2a7136f47e0294f6b672d9bfe02" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a>&amp; UnicodeString::toLower </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Convert the characters in this to lower case following the conventions of the default locale. </p>
<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#_stable001496">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="ae0d8785af9aafd3da545f580b7bac06b"></a><!-- doxytag: member="UnicodeString::toTitle" ref="ae0d8785af9aafd3da545f580b7bac06b" args="(BreakIterator *titleIter, const Locale &amp;locale, uint32_t options)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a>&amp; UnicodeString::toTitle </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classBreakIterator.html">BreakIterator</a> *&nbsp;</td>
          <td class="paramname"> <em>titleIter</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classLocale.html">Locale</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>locale</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>options</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Titlecase this string, with options. </p>
<p>Casing is locale-dependent and context-sensitive. Titlecasing uses a break iterator to find the first characters of words that are to be titlecased. It titlecases those characters and lowercases all others. (This can be modified with options.)</p>
<p>The titlecase break iterator can be provided to customize for arbitrary styles, using rules and dictionaries beyond the standard iterators. It may be more efficient to always provide an iterator to avoid opening and closing one for each string. The standard titlecase iterator for the root locale implements the algorithm of Unicode TR 21.</p>
<p>This function uses only the setText(), first() and next() methods of the provided break iterator.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>titleIter</em>&nbsp;</td><td>A break iterator to find the first characters of words that are to be titlecased. If none is provided (0), then a standard titlecase break iterator is opened. Otherwise the provided iterator is set to the string's text. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>locale</em>&nbsp;</td><td>The locale to consider. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td>Options bit set, see <a class="el" href="ucasemap_8h.html#a40df152b19d07dba4cc9d5b3015b27d1" title="Open a UCaseMap service object for a locale and a set of options.">ucasemap_open()</a>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>A reference to this. </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="ucasemap_8h.html#aab9de6ad843adcbc21001f7f93f1e888" title="Do not lowercase non-initial parts of words when titlecasing.">U_TITLECASE_NO_LOWERCASE</a> </dd>
<dd>
<a class="el" href="ucasemap_8h.html#afc65fa226cac9b8eeef0e877b8a7744e" title="Do not adjust the titlecasing indexes from BreakIterator::next() indexes; titlecase...">U_TITLECASE_NO_BREAK_ADJUSTMENT</a> </dd>
<dd>
<a class="el" href="ucasemap_8h.html#a40df152b19d07dba4cc9d5b3015b27d1" title="Open a UCaseMap service object for a locale and a set of options.">ucasemap_open</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001500">Stable:</a></b></dt><dd>ICU 3.8 </dd></dl>

</div>
</div>
<a class="anchor" id="acc99199208fb911188d4dc74e6284ed3"></a><!-- doxytag: member="UnicodeString::toTitle" ref="acc99199208fb911188d4dc74e6284ed3" args="(BreakIterator *titleIter, const Locale &amp;locale)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a>&amp; UnicodeString::toTitle </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classBreakIterator.html">BreakIterator</a> *&nbsp;</td>
          <td class="paramname"> <em>titleIter</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classLocale.html">Locale</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>locale</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Titlecase this string. </p>
<p>Casing is locale-dependent and context-sensitive. Titlecasing uses a break iterator to find the first characters of words that are to be titlecased. It titlecases those characters and lowercases all others.</p>
<p>The titlecase break iterator can be provided to customize for arbitrary styles, using rules and dictionaries beyond the standard iterators. It may be more efficient to always provide an iterator to avoid opening and closing one for each string. The standard titlecase iterator for the root locale implements the algorithm of Unicode TR 21.</p>
<p>This function uses only the setText(), first() and next() methods of the provided break iterator.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>titleIter</em>&nbsp;</td><td>A break iterator to find the first characters of words that are to be titlecased. If none is provided (0), then a standard titlecase break iterator is opened. Otherwise the provided iterator is set to the string's text. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>locale</em>&nbsp;</td><td>The locale to consider. </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#_stable001499">Stable:</a></b></dt><dd>ICU 2.1 </dd></dl>

</div>
</div>
<a class="anchor" id="a76491929251438d4aa982c8f4c1bebfa"></a><!-- doxytag: member="UnicodeString::toTitle" ref="a76491929251438d4aa982c8f4c1bebfa" args="(BreakIterator *titleIter)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a>&amp; UnicodeString::toTitle </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classBreakIterator.html">BreakIterator</a> *&nbsp;</td>
          <td class="paramname"> <em>titleIter</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Titlecase this string, convenience function using the default locale. </p>
<p>Casing is locale-dependent and context-sensitive. Titlecasing uses a break iterator to find the first characters of words that are to be titlecased. It titlecases those characters and lowercases all others.</p>
<p>The titlecase break iterator can be provided to customize for arbitrary styles, using rules and dictionaries beyond the standard iterators. It may be more efficient to always provide an iterator to avoid opening and closing one for each string. The standard titlecase iterator for the root locale implements the algorithm of Unicode TR 21.</p>
<p>This function uses only the setText(), first() and next() methods of the provided break iterator.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>titleIter</em>&nbsp;</td><td>A break iterator to find the first characters of words that are to be titlecased. If none is provided (0), then a standard titlecase break iterator is opened. Otherwise the provided iterator is set to the string's text. </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#_stable001498">Stable:</a></b></dt><dd>ICU 2.1 </dd></dl>

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

<p>Convert the characters in this to UPPER CASE following the conventions of a specific locale. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>locale</em>&nbsp;</td><td>The locale containing the conventions to use. </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#_stable001495">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="aad9e8e68e89dc947b864a4d37e310ffb"></a><!-- doxytag: member="UnicodeString::toUpper" ref="aad9e8e68e89dc947b864a4d37e310ffb" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a>&amp; UnicodeString::toUpper </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Convert the characters in this to UPPER CASE following the conventions of the default locale. </p>
<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#_stable001494">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a78ae20a1d15288a594904fe02c45488c"></a><!-- doxytag: member="UnicodeString::trim" ref="a78ae20a1d15288a594904fe02c45488c" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a>&amp; UnicodeString::trim </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Trims leading and trailing whitespace from this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>. </p>
<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#_stable001491">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

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

<p>Truncate this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a> to the <code>targetLength</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>targetLength</em>&nbsp;</td><td>the desired length of this <a class="el" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides...">UnicodeString</a>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>TRUE if the text was truncated, FALSE otherwise </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001490">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Definition at line <a class="el" href="unistr_8h_source.html#l04205">4205</a> of file <a class="el" href="unistr_8h_source.html">unistr.h</a>.</p>

<p>References <a class="el" href="umachine_8h_source.html#l00202">FALSE</a>, <a class="el" href="unistr_8h_source.html#l03322">isBogus()</a>, <a class="el" href="unistr_8h_source.html#l03310">length()</a>, and <a class="el" href="umachine_8h_source.html#l00198">TRUE</a>.</p>

<p>Referenced by <a class="el" href="translit_8h_source.html#l01300">Transliterator::setID()</a>.</p>

</div>
</div>
<a class="anchor" id="abb3f5f6eb82c5689fcfeb8f79d5ca2bf"></a><!-- doxytag: member="UnicodeString::unescape" ref="abb3f5f6eb82c5689fcfeb8f79d5ca2bf" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUnicodeString.html">UnicodeString</a> UnicodeString::unescape </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Unescape a string of characters and return a string containing the result. </p>
<p>The following escape sequences are recognized:</p>
<p>\uhhhh 4 hex digits; h in [0-9A-Fa-f] \Uhhhhhhhh 8 hex digits \xhh 1-2 hex digits \ooo 1-3 octal digits; o in [0-7] \cX control-X; X is masked with 0x1F</p>
<p>as well as the standard ANSI C escapes:</p>
<p>\a =&gt; U+0007, \b =&gt; U+0008, \t =&gt; U+0009, \n =&gt; U+000A, \v =&gt; U+000B, \f =&gt; U+000C, \r =&gt; U+000D, \e =&gt; U+001B, \ =&gt; U+0022, \' =&gt; U+0027, \? =&gt; U+003F, \\ =&gt; U+005C</p>
<p>Anything else following a backslash is generically escaped. For example, "[a\\-z]" returns "[a-z]".</p>
<p>If an escape sequence is ill-formed, this method returns an empty string. An example of an ill-formed sequence is "\\u" followed by fewer than 4 hex digits.</p>
<p>This function is similar to <a class="el" href="ustring_8h.html#a7aad56a2a6f7cbe3b2fb802a218d239b" title="Unescape a string of characters and write the resulting Unicode characters to the...">u_unescape()</a> but not identical to it. The latter takes a source char*, so it does escape recognition and also invariant conversion.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a string with backslash escapes interpreted, or an empty string on error. </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeString.html#af94aa1c7dafa0c151bf0fcbe32d69ded" title="Unescape a single escape sequence and return the represented character.">UnicodeString::unescapeAt()</a> </dd>
<dd>
<a class="el" href="ustring_8h.html#a7aad56a2a6f7cbe3b2fb802a218d239b" title="Unescape a string of characters and write the resulting Unicode characters to the...">u_unescape()</a> </dd>
<dd>
<a class="el" href="ustring_8h.html#a82a0eed3cd4ec580c996301c0b1a73b0" title="Unescape a single sequence.">u_unescapeAt()</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001523">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

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

<p>Unescape a single escape sequence and return the represented character. </p>
<p>See <a class="el" href="classUnicodeString.html#abb3f5f6eb82c5689fcfeb8f79d5ca2bf" title="Unescape a string of characters and return a string containing the result.">unescape()</a> for a listing of the recognized escape sequences. The character at offset-1 is assumed (without checking) to be a backslash. If the escape sequence is ill-formed, or the offset is out of range, (UChar32)0xFFFFFFFF is returned.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>offset</em>&nbsp;</td><td>an input output parameter. On input, it is the offset into this string where the escape sequence is located, after the initial backslash. On output, it is advanced after the last character parsed. On error, it is not advanced at all. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the character represented by the escape sequence at offset, or (UChar32)0xFFFFFFFF on error. </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classUnicodeString.html#abb3f5f6eb82c5689fcfeb8f79d5ca2bf" title="Unescape a string of characters and return a string containing the result.">UnicodeString::unescape()</a> </dd>
<dd>
<a class="el" href="ustring_8h.html#a7aad56a2a6f7cbe3b2fb802a218d239b" title="Unescape a string of characters and write the resulting Unicode characters to the...">u_unescape()</a> </dd>
<dd>
<a class="el" href="ustring_8h.html#a82a0eed3cd4ec580c996301c0b1a73b0" title="Unescape a single sequence.">u_unescapeAt()</a> </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable001524">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="unistr_8h_source.html">unistr.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 2 Mar 2015 for ICU 4.0.1 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>

Zerion Mini Shell 1.0