📄 qcstring.html
字号:
// s == "Meal" </pre> <p> <p>也可以参考<a href="#insert">insert</a>()和<a href="#replace">replace</a>()。<p>实例:<a href="networkprotocol-example.html#x596">network/networkprotocol/nntp.cpp</a>。<h3 class=fn><a href="qcstring.html">QCString</a> & <a name="replace"></a>QCString::replace ( uint index, uint len, const char * str )</h3>从字符串中的<em>index</em>位置开始使用<em>str</em>替换<em>len</em>个字符,并且返回这个字符串的引用。<p> 如果<em>index</em>超出字符串的长度,就什么也不被删除并且<em>s</em>被添加到字符串结尾。如果 <em>index</em>有效并且<em>index</em>加上<em>len</em>超过字符串的结尾,那么这个字符串将从<em>index</em>开始被截短,并且<em>str</em>被添加到字符串结尾。<p> <pre> QCString s = "Say yes!"; s.<a href="#replace">replace</a>( 4, 3, "NO" ); // s == "Say NO!" </pre> <p> <p>也可以参考<a href="#insert">insert</a>()和<a href="#remove">remove</a>()。<h3 class=fn><a href="qcstring.html">QCString</a> & <a name="replace-2"></a>QCString::replace ( const <a href="qregexp.html">QRegExp</a> & rx, const char * str )</h3>这是一个重载成员函数,提供了方便。它的行为基本上和上面的函数相同。<p> 用<em>str</em>替换字符串中出现的每一个正则表达式<em>rx</em>。返回这个字符串的引用。<p> 实例:<pre> <a href="qstring.html">QString</a> s = "banana"; s.<a href="qstring.html#replace">replace</a>( QRegExp("a.*a"), "" ); // 变为“b” s = "banana"; s.<a href="qstring.html#replace">replace</a>( QRegExp("^[bn]a"), " " ); // 变为“ nana” s = "banana"; s.<a href="qstring.html#replace">replace</a>( QRegExp("^[bn]a"), "" ); // 注意!变为“” </pre> <p> 最后一个例子可能很令人惊奇。正则表达式的语义<em>重复地</em>应用于这个字符串,所以首先最开始的“ba”被移除了,接着是“na”,然后是最后的“na”,剩下的就是一个空字符串了。<h3 class=fn>bool <a name="resize"></a>QCString::resize ( uint len )</h3>扩展或者收缩字符串到<em>len</em>字节,包括'\0'结束符。<p> '\0'结束符被设置在<code>len - 1</code>位置,除非<code>len == 0</code>。<p> 实例:<pre> QCString s = "resize this string"; s.<a href="#resize">resize</a>( 7 ); // s == "resize" </pre> <p> <p>也可以参考<a href="#truncate">truncate</a>()。<p>实例:<a href="networkprotocol-example.html#x597">network/networkprotocol/nntp.cpp</a>。<h3 class=fn><a href="qcstring.html">QCString</a> <a name="right"></a>QCString::right ( uint len ) const</h3>返回包含字符串最右面的<em>len</em>个字符的子字符串。<p> 如果<em>len</em>超过字符串的长度,则整个字符串被返回。<p> 实例:<pre> QCString s = "Pineapple"; QCString t = s.<a href="#right">right</a>( 5 ); // t == "apple" </pre> <p> <p>也可以参考<a href="#left">left</a>()和<a href="#mid">mid</a>()。<p>实例:<a href="networkprotocol-example.html#x598">network/networkprotocol/nntp.cpp</a>。<h3 class=fn><a href="qcstring.html">QCString</a> <a name="rightJustify"></a>QCString::rightJustify ( uint width, char fill = ' ', bool truncate = FALSE ) const</h3>返回一个长度为<em>width</em>的(为了结束符'\0'加一),包含<em>fill</em>填补的字符串,后面跟着这个字符串。<p> 如果<em>truncate</em>为假并且字符串的长度超过<em>width</em>,那么返回的字符串是这个字符串的复制。<p> 如果<em>truncate</em>为真并且字符串的长度超过<em>width</em>,那么返回的字符串是<a href="#right">right</a>(<em>width</em>).。<p> 实例:<pre> QCString s("pie"); QCString t = s.<a href="#rightJustify">rightJustify</a>(8, '.'); // t == ".....pie" </pre> <p> <p>也可以参考<a href="#leftJustify">leftJustify</a>()。<h3 class=fn>bool <a name="setExpand"></a>QCString::setExpand ( uint index, char c )</h3>设置在<em>index</em>位置的字符为<em>c</em>并且如果需要使用空格来扩展这个字符串。<p> 如果<em>index</em>超出范围并且如果字符串不能被扩大,返回假,否则为真。<h3 class=fn><a href="qcstring.html">QCString</a> & <a name="setNum"></a>QCString::setNum ( double n, char f = 'g', int prec = 6 )</h3>设置字符串为数字<em>n</em>的字符表示并且返回字符串的引用。<p> 字符表示的格式由格式字符<em>f</em>指定,并且精度(小数点之后的位数)由<em>prec</em>指定。<p> 有效的<em>f</em>的格式为'e'、'E'、'f'、'g'和'G'。和<a href="#sprintf">sprintf</a>()的格式相同,在<a href="qstring.html#arg">QString::arg</a>()中有它们的解释。<h3 class=fn><a href="qcstring.html">QCString</a> & <a name="setNum-2"></a>QCString::setNum ( short n )</h3>这是一个重载成员函数,提供了方便。它的行为基本上和上面的函数相同。<p> 设置字符串为数字<em>n</em>的字符表示并且返回字符串的引用。<h3 class=fn><a href="qcstring.html">QCString</a> & <a name="setNum-3"></a>QCString::setNum ( ushort n )</h3>这是一个重载成员函数,提供了方便。它的行为基本上和上面的函数相同。<p> 设置字符串为数字<em>n</em>的字符表示并且返回字符串的引用。<h3 class=fn><a href="qcstring.html">QCString</a> & <a name="setNum-4"></a>QCString::setNum ( int n )</h3>这是一个重载成员函数,提供了方便。它的行为基本上和上面的函数相同。<p> 设置字符串为数字<em>n</em>的字符表示并且返回字符串的引用。<h3 class=fn><a href="qcstring.html">QCString</a> & <a name="setNum-5"></a>QCString::setNum ( uint n )</h3>这是一个重载成员函数,提供了方便。它的行为基本上和上面的函数相同。<p> 设置字符串为数字<em>n</em>的字符表示并且返回字符串的引用。<h3 class=fn><a href="qcstring.html">QCString</a> & <a name="setNum-6"></a>QCString::setNum ( long n )</h3>这是一个重载成员函数,提供了方便。它的行为基本上和上面的函数相同。<p> 设置字符串为数字<em>n</em>的字符表示并且返回字符串的引用。<h3 class=fn><a href="qcstring.html">QCString</a> & <a name="setNum-7"></a>QCString::setNum ( ulong n )</h3>这是一个重载成员函数,提供了方便。它的行为基本上和上面的函数相同。<p> 设置字符串为数字<em>n</em>的字符表示并且返回字符串的引用。<h3 class=fn><a href="qcstring.html">QCString</a> & <a name="setNum-8"></a>QCString::setNum ( float n, char f = 'g', int prec = 6 )</h3> 这是一个重载成员函数,提供了方便。它的行为基本上和上面的函数相同。<h3 class=fn><a href="qcstring.html">QCString</a> & <a name="setStr"></a>QCString::setStr ( const char * str )</h3>把<em>str</em>的一个<a href="shclass.html#deep-copy">深度复制</a>赋值给这个字符串并且返回这个字符串的引用。<h3 class=fn><a href="qcstring.html">QCString</a> <a name="simplifyWhiteSpace"></a>QCString::simplifyWhiteSpace () const</h3>返回一个移除了这个字符串的开始和结尾的空白符号的字符串,并且内部的空白符号都被替代为单一的空格(ASCII 32)。<p> 空白符号是指十进制ASCII码为9、10、11、12、13和32。<p> <pre> QCString s = " lots\t of\nwhite space "; QCString t = s.<a href="#simplifyWhiteSpace">simplifyWhiteSpace</a>(); // t == "lots of white space" </pre> <p> <p>也可以参考<a href="#stripWhiteSpace">stripWhiteSpace</a>()。<h3 class=fn><a href="qcstring.html">QCString</a> & <a name="sprintf"></a>QCString::sprintf ( const char * format, ... )</h3>重新实现为本地的vsprintf()的一个调用(请参考你的C库的手册)。<p> 如果字符串小于256字符,这个<a href="#sprintf">sprintf</a>()调用<a href="#resize">resize</a>(256)来减少内存的占用。在sprintf()返回之前,字符串被重新定义为它实际的长度。<p> 实例:<pre> QCString s; s.<a href="#sprintf">sprintf</a>( "%d - %s", 1, "first" ); // result < 256 字符 QCString big( 25000 ); // 很长的字符串 big.<a href="#sprintf">sprintf</a>( "%d - %s", 2, longString ); // result < 25000 字符 </pre> <p> <b>警告:</b> limit.如果<em>format</em>规格和参数比目标字符串常,所有的vsprintf()实现将会越过目标字符串(*this)进行写操作,并且如果目标字符串比一些任意实现限制长,会有一些失败。<p> 把用户给定的参数传给sprintf()会导致一些问题。迟早会有一些人<em>将会</em>把3000个字符的行传给你的应用程序。<h3 class=fn><a href="qcstring.html">QCString</a> <a name="stripWhiteSpace"></a>QCString::stripWhiteSpace () const</h3>返回一个移除了这个字符串的开始和结尾的空白符号的字符串。<p> 空白符号是指十进制ASCII码为9、10、11、12、13和32。<p> 实例:<pre> QCString s = " space "; QCString t = s.<a href="#stripWhiteSpace">stripWhiteSpace</a>(); // t == "space" </pre> <p> <p>也可以参考<a href="#simplifyWhiteSpace">simplifyWhiteSpace</a>()。<h3 class=fn>double <a name="toDouble"></a>QCString::toDouble ( bool * ok = 0 ) const</h3>返回由这个字符串转化的<tt>double</tt>值。<p> 如果转化发生错误,<em>*ok</em>被设置为假(除非<em>ok</em>为0,这是默认的)并且0被返回。否则<em>*ok</em>被设置为真。<h3 class=fn>float <a name="toFloat"></a>QCString::toFloat ( bool * ok = 0 ) const</h3>返回由这个字符串转化的<tt>float</tt>值。<p> 如果转化发生错误,<em>*ok</em>被设置为假(除非<em>ok</em>为0,这是默认的)并且0被返回。否则<em>*ok</em>被设置为真。<h3 class=fn>int <a name="toInt"></a>QCString::toInt ( bool * ok = 0 ) const</h3>返回由这个字符串转化的<tt>int</tt>值。<p> 如果转化发生错误,<em>*ok</em>被设置为假(除非<em>ok</em>为0,这是默认的)并且0被返回。否则<em>*ok</em>被设置为真。<h3 class=fn>long <a name="toLong"></a>QCString::toLong ( bool * ok = 0 ) const</h3>返回由这个字符串转化的<tt>long</tt>值。<p> 如果转化发生错误,<em>*ok</em>被设置为假(除非<em>ok</em>为0,这是默认的)并且0被返回。否则<em>*ok</em>被设置为真。<h3 class=fn>short <a name="toShort"></a>QCString::toShort ( bool * ok = 0 ) const</h3>返回由这个字符串转化的<tt>short</tt>值。<p> 如果转化发生错误,<em>*ok</em>被设置为假(除非<em>ok</em>为0,这是默认的)并且0被返回。否则<em>*ok</em>被设置为真。<h3 class=fn>uint <a name="toUInt"></a>QCString::toUInt ( bool * ok = 0 ) const</h3>返回由这个字符串转化的<tt>unsigned int</tt>值。<p> 如果转化发生错误,<em>*ok</em>被设置为假(除非<em>ok</em>为0,这是默认的)并且0被返回。否则<em>*ok</em>被设置为真。<h3 class=fn>ulong <a name="toULong"></a>QCString::toULong ( bool * ok = 0 ) const</h3>返回由这个字符串转化的<tt>unsigned long</tt>值。<p> 如果转化发生错误,<em>*ok</em>被设置为假(除非<em>ok</em>为0,这是默认的)并且0被返回。否则<em>*ok</em>被设置为真。<h3 class=fn>ushort <a name="toUShort"></a>QCString::toUShort ( bool * ok = 0 ) const</h3>返回由这个字符串转化的<tt>unsigned short</tt>值。<p> 如果转化发生错误,<em>*ok</em>被设置为假(除非<em>ok</em>为0,这是默认的)并且0被返回。否则<em>*ok</em>被设置为真。<h3 class=fn>bool <a name="truncate"></a>QCString::truncate ( uint pos )</h3>在<em>pos</em>位置截短字符串。<p> 等于调用<tt>resize(pos+1)</tt>。<p> 实例:<pre>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -