<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!-- qstringmatcher.cpp --> <title>QStringMatcher Class | Qt Core 5.12.2</title> <link rel="stylesheet" type="text/css" href="style/offline-simple.css" /> <script type="text/javascript"> document.getElementsByTagName("link").item(0).setAttribute("href", "style/offline.css"); // loading style sheet breaks anchors that were jumped to before // so force jumping to anchor again setTimeout(function() { var anchor = location.hash; // need to jump to different anchor first (e.g. none) location.hash = "#"; setTimeout(function() { location.hash = anchor; }, 0); }, 0); </script> </head> <body> <div class="header" id="qtdocheader"> <div class="main"> <div class="main-rounded"> <div class="navigationbar"> <table><tr> <td >Qt 5.12</td><td ><a href="qtcore-index.html">Qt Core</a></td><td ><a href="qtcore-module.html">C++ Classes</a></td><td >QStringMatcher</td></tr></table><table class="buildversion"><tr> <td id="buildversion" width="100%" align="right"><a href="qtcore-index.html">Qt 5.12.2 Reference Documentation</a></td> </tr></table> </div> </div> <div class="content"> <div class="line"> <div class="content mainContent"> <div class="sidebar"> <div class="toc"> <h3><a name="toc">Contents</a></h3> <ul> <li class="level1"><a href="#public-functions">Public Functions</a></li> <li class="level1"><a href="#details">Detailed Description</a></li> </ul> </div> <div class="sidebar-content" id="sidebar-content"></div></div> <h1 class="title">QStringMatcher Class</h1> <!-- $$$QStringMatcher-brief --> <p>The <a href="qstringmatcher.html">QStringMatcher</a> class holds a sequence of characters that can be quickly matched in a Unicode string. <a href="#details">More...</a></p> <!-- @@@QStringMatcher --> <div class="table"><table class="alignedsummary"> <tr><td class="memItemLeft rightAlign topAlign"> Header:</td><td class="memItemRight bottomAlign"> <span class="preprocessor">#include <QStringMatcher></span> </td></tr><tr><td class="memItemLeft rightAlign topAlign"> qmake:</td><td class="memItemRight bottomAlign"> QT += core</td></tr></table></div><ul> <li><a href="qstringmatcher-members.html">List of all members, including inherited members</a></li> </ul> <a name="public-functions"></a> <h2 id="public-functions">Public Functions</h2> <div class="table"><table class="alignedsummary"> <tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="qstringmatcher.html#QStringMatcher">QStringMatcher</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="qstringmatcher.html#QStringMatcher-1">QStringMatcher</a></b>(const QString &<i>pattern</i>, Qt::CaseSensitivity <i>cs</i> = Qt::CaseSensitive)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="qstringmatcher.html#QStringMatcher-2">QStringMatcher</a></b>(const QChar *<i>uc</i>, int <i>length</i>, Qt::CaseSensitivity <i>cs</i> = Qt::CaseSensitive)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="qstringmatcher.html#QStringMatcher-3">QStringMatcher</a></b>(const QStringMatcher &<i>other</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="qstringmatcher.html#dtor.QStringMatcher">~QStringMatcher</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> Qt::CaseSensitivity </td><td class="memItemRight bottomAlign"><b><a href="qstringmatcher.html#caseSensitivity">caseSensitivity</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="qstringmatcher.html#indexIn">indexIn</a></b>(const QString &<i>str</i>, int <i>from</i> = 0) const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="qstringmatcher.html#indexIn-1">indexIn</a></b>(const QChar *<i>str</i>, int <i>length</i>, int <i>from</i> = 0) const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> QString </td><td class="memItemRight bottomAlign"><b><a href="qstringmatcher.html#pattern">pattern</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="qstringmatcher.html#setCaseSensitivity">setCaseSensitivity</a></b>(Qt::CaseSensitivity <i>cs</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="qstringmatcher.html#setPattern">setPattern</a></b>(const QString &<i>pattern</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> QStringMatcher &</td><td class="memItemRight bottomAlign"><b><a href="qstringmatcher.html#operator-eq">operator=</a></b>(const QStringMatcher &<i>other</i>)</td></tr> </table></div> <a name="details"></a> <!-- $$$QStringMatcher-description --> <div class="descr"> <h2 id="details">Detailed Description</h2> <p>The <a href="qstringmatcher.html">QStringMatcher</a> class holds a sequence of characters that can be quickly matched in a Unicode string.</p> <p>This class is useful when you have a sequence of <a href="qchar.html">QChar</a>s that you want to repeatedly match against some strings (perhaps in a loop), or when you want to search for the same sequence of characters multiple times in the same string. Using a matcher object and <a href="qstringmatcher.html#indexIn">indexIn</a>() is faster than matching a plain <a href="qstring.html">QString</a> with <a href="qstring.html#indexOf">QString::indexOf</a>() if repeated matching takes place. This class offers no benefit if you are doing one-off string matches.</p> <p>Create the <a href="qstringmatcher.html">QStringMatcher</a> with the <a href="qstring.html">QString</a> you want to search for. Then call <a href="qstringmatcher.html#indexIn">indexIn</a>() on the <a href="qstring.html">QString</a> that you want to search.</p> </div> <p><b>See also </b><a href="qstring.html">QString</a>, <a href="qbytearraymatcher.html">QByteArrayMatcher</a>, and <a href="qregexp.html">QRegExp</a>.</p> <!-- @@@QStringMatcher --> <div class="func"> <h2>Member Function Documentation</h2> <!-- $$$QStringMatcher[overload1]$$$QStringMatcher --> <h3 class="fn" id="QStringMatcher"><a name="QStringMatcher"></a>QStringMatcher::<span class="name">QStringMatcher</span>()</h3> <p>Constructs an empty string matcher that won't match anything. Call <a href="qstringmatcher.html#setPattern">setPattern</a>() to give it a pattern to match.</p> <!-- @@@QStringMatcher --> <!-- $$$QStringMatcher$$$QStringMatcherconstQString&Qt::CaseSensitivity --> <h3 class="fn" id="QStringMatcher-1"><a name="QStringMatcher-1"></a>QStringMatcher::<span class="name">QStringMatcher</span>(const <span class="type"><a href="qstring.html">QString</a></span> &<i>pattern</i>, <span class="type"><a href="qt.html#CaseSensitivity-enum">Qt::CaseSensitivity</a></span> <i>cs</i> = Qt::CaseSensitive)</h3> <p>Constructs a string matcher that will search for <i>pattern</i>, with case sensitivity <i>cs</i>.</p> <p>Call <a href="qstringmatcher.html#indexIn">indexIn</a>() to perform a search.</p> <!-- @@@QStringMatcher --> <!-- $$$QStringMatcher$$$QStringMatcherconstQChar*intQt::CaseSensitivity --> <h3 class="fn" id="QStringMatcher-2"><a name="QStringMatcher-2"></a>QStringMatcher::<span class="name">QStringMatcher</span>(const <span class="type"><a href="qchar.html">QChar</a></span> *<i>uc</i>, <span class="type">int</span> <i>length</i>, <span class="type"><a href="qt.html#CaseSensitivity-enum">Qt::CaseSensitivity</a></span> <i>cs</i> = Qt::CaseSensitive)</h3> <p>Constructs a string matcher that will search for the pattern referred to by <i>uc</i> with the given <i>length</i> and case sensitivity specified by <i>cs</i>.</p> <p>This function was introduced in Qt 4.5.</p> <!-- @@@QStringMatcher --> <!-- $$$QStringMatcher$$$QStringMatcherconstQStringMatcher& --> <h3 class="fn" id="QStringMatcher-3"><a name="QStringMatcher-3"></a>QStringMatcher::<span class="name">QStringMatcher</span>(const <span class="type"><a href="qstringmatcher.html#QStringMatcher">QStringMatcher</a></span> &<i>other</i>)</h3> <p>Copies the <i>other</i> string matcher to this string matcher.</p> <!-- @@@QStringMatcher --> <!-- $$$~QStringMatcher[overload1]$$$~QStringMatcher --> <h3 class="fn" id="dtor.QStringMatcher"><a name="dtor.QStringMatcher"></a>QStringMatcher::<span class="name">~QStringMatcher</span>()</h3> <p>Destroys the string matcher.</p> <!-- @@@~QStringMatcher --> <!-- $$$caseSensitivity[overload1]$$$caseSensitivity --> <h3 class="fn" id="caseSensitivity"><a name="caseSensitivity"></a><span class="type"><a href="qt.html#CaseSensitivity-enum">Qt::CaseSensitivity</a></span> QStringMatcher::<span class="name">caseSensitivity</span>() const</h3> <p>Returns the case sensitivity setting for this string matcher.</p> <p><b>See also </b><a href="qstringmatcher.html#setCaseSensitivity">setCaseSensitivity</a>().</p> <!-- @@@caseSensitivity --> <!-- $$$indexIn[overload1]$$$indexInconstQString&int --> <h3 class="fn" id="indexIn"><a name="indexIn"></a><span class="type">int</span> QStringMatcher::<span class="name">indexIn</span>(const <span class="type"><a href="qstring.html">QString</a></span> &<i>str</i>, <span class="type">int</span> <i>from</i> = 0) const</h3> <p>Searches the string <i>str</i> from character position <i>from</i> (default 0, i.e. from the first character), for the string <a href="qstringmatcher.html#pattern">pattern</a>() that was set in the constructor or in the most recent call to <a href="qstringmatcher.html#setPattern">setPattern</a>(). Returns the position where the <a href="qstringmatcher.html#pattern">pattern</a>() matched in <i>str</i>, or -1 if no match was found.</p> <p><b>See also </b><a href="qstringmatcher.html#setPattern">setPattern</a>() and <a href="qstringmatcher.html#setCaseSensitivity">setCaseSensitivity</a>().</p> <!-- @@@indexIn --> <!-- $$$indexIn$$$indexInconstQChar*intint --> <h3 class="fn" id="indexIn-1"><a name="indexIn-1"></a><span class="type">int</span> QStringMatcher::<span class="name">indexIn</span>(const <span class="type"><a href="qchar.html">QChar</a></span> *<i>str</i>, <span class="type">int</span> <i>length</i>, <span class="type">int</span> <i>from</i> = 0) const</h3> <p>Searches the string starting at <i>str</i> (of length <i>length</i>) from character position <i>from</i> (default 0, i.e. from the first character), for the string <a href="qstringmatcher.html#pattern">pattern</a>() that was set in the constructor or in the most recent call to <a href="qstringmatcher.html#setPattern">setPattern</a>(). Returns the position where the <a href="qstringmatcher.html#pattern">pattern</a>() matched in <i>str</i>, or -1 if no match was found.</p> <p>This function was introduced in Qt 4.5.</p> <p><b>See also </b><a href="qstringmatcher.html#setPattern">setPattern</a>() and <a href="qstringmatcher.html#setCaseSensitivity">setCaseSensitivity</a>().</p> <!-- @@@indexIn --> <!-- $$$pattern[overload1]$$$pattern --> <h3 class="fn" id="pattern"><a name="pattern"></a><span class="type"><a href="qstring.html">QString</a></span> QStringMatcher::<span class="name">pattern</span>() const</h3> <p>Returns the string pattern that this string matcher will search for.</p> <p><b>See also </b><a href="qstringmatcher.html#setPattern">setPattern</a>().</p> <!-- @@@pattern --> <!-- $$$setCaseSensitivity[overload1]$$$setCaseSensitivityQt::CaseSensitivity --> <h3 class="fn" id="setCaseSensitivity"><a name="setCaseSensitivity"></a><span class="type">void</span> QStringMatcher::<span class="name">setCaseSensitivity</span>(<span class="type"><a href="qt.html#CaseSensitivity-enum">Qt::CaseSensitivity</a></span> <i>cs</i>)</h3> <p>Sets the case sensitivity setting of this string matcher to <i>cs</i>.</p> <p><b>See also </b><a href="qstringmatcher.html#caseSensitivity">caseSensitivity</a>(), <a href="qstringmatcher.html#setPattern">setPattern</a>(), and <a href="qstringmatcher.html#indexIn">indexIn</a>().</p> <!-- @@@setCaseSensitivity --> <!-- $$$setPattern[overload1]$$$setPatternconstQString& --> <h3 class="fn" id="setPattern"><a name="setPattern"></a><span class="type">void</span> QStringMatcher::<span class="name">setPattern</span>(const <span class="type"><a href="qstring.html">QString</a></span> &<i>pattern</i>)</h3> <p>Sets the string that this string matcher will search for to <i>pattern</i>.</p> <p><b>See also </b><a href="qstringmatcher.html#pattern">pattern</a>(), <a href="qstringmatcher.html#setCaseSensitivity">setCaseSensitivity</a>(), and <a href="qstringmatcher.html#indexIn">indexIn</a>().</p> <!-- @@@setPattern --> <!-- $$$operator=[overload1]$$$operator=constQStringMatcher& --> <h3 class="fn" id="operator-eq"><a name="operator-eq"></a><span class="type"><a href="qstringmatcher.html#QStringMatcher">QStringMatcher</a></span> &QStringMatcher::<span class="name">operator=</span>(const <span class="type"><a href="qstringmatcher.html#QStringMatcher">QStringMatcher</a></span> &<i>other</i>)</h3> <p>Assigns the <i>other</i> string matcher to this string matcher.</p> <!-- @@@operator= --> </div> </div> </div> </div> </div> </div> <div class="footer"> <p> <acronym title="Copyright">©</acronym> 2019 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners.<br/> The documentation provided herein is licensed under the terms of the <a href="http://www.gnu.org/licenses/fdl.html">GNU Free Documentation License version 1.3</a> as published by the Free Software Foundation.<br/> Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners. </p> </div> </body> </html>