<html> <head> <title>Ogre::StringUtil class Reference - OGRE Documentation</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link type="text/css" rel="stylesheet" href="style.css"> </head> <body> <!-- Generated by Doxygen 1.3.6 --> <div class="qindex"><a class="qindex" href="index.html">Main Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Class List</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="namespacemembers.html">Namespace Members</a> | <a class="qindex" href="functions.html">Class Members</a> | <a class="qindex" href="globals.html">File Members</a> | <a class="qindex" href="pages.html">Related Pages</a></div> <h1>Ogre::StringUtil Class Reference</h1>Utility class for manipulating Strings. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="OgreString_8h-source.html">OgreString.h</a>></code> <p> <a href="classOgre_1_1StringUtil-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0> <tr><td></td></tr> <tr><td colspan=2><br><h2>Public Types</h2></td></tr> <tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::stringstream </td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StringUtil.html#Ogre_1_1StringUtilw0">StrStreamType</a></td></tr> <tr><td colspan=2><br><h2>Static Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StringUtil.html#Ogre_1_1StringUtile0">trim</a> (<a class="el" href="namespaceOgre.html#a426">String</a> &str, bool left=true, bool right=true)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Removes any whitespace characters, be it standard space or TABs and so on. <a href="#Ogre_1_1StringUtile0"></a><br><br></td></tr> <tr><td class="memItemLeft" nowrap align=right valign=top>std::vector< <a class="el" href="namespaceOgre.html#a426">String</a> > </td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StringUtil.html#Ogre_1_1StringUtile1">split</a> (const <a class="el" href="namespaceOgre.html#a426">String</a> &str, const <a class="el" href="namespaceOgre.html#a426">String</a> &delims="\t\n", unsigned int maxSplits=0)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns a StringVector that contains all the substrings delimited by the characters in the passed <code>delims</code> argument. <a href="#Ogre_1_1StringUtile1"></a><br><br></td></tr> <tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StringUtil.html#Ogre_1_1StringUtile2">toLowerCase</a> (<a class="el" href="namespaceOgre.html#a426">String</a> &str)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Upper-cases all the characters in the string. <a href="#Ogre_1_1StringUtile2"></a><br><br></td></tr> <tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StringUtil.html#Ogre_1_1StringUtile3">toUpperCase</a> (<a class="el" href="namespaceOgre.html#a426">String</a> &str)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Lower-cases all the characters in the string. <a href="#Ogre_1_1StringUtile3"></a><br><br></td></tr> <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="namespaceOgre.html#a420">Real</a> </td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StringUtil.html#Ogre_1_1StringUtile4">toReal</a> (const <a class="el" href="namespaceOgre.html#a426">String</a> &str)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Converts the contents of the string to a Real. <a href="#Ogre_1_1StringUtile4"></a><br><br></td></tr> <tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StringUtil.html#Ogre_1_1StringUtile5">startsWith</a> (const <a class="el" href="namespaceOgre.html#a426">String</a> &str, const <a class="el" href="namespaceOgre.html#a426">String</a> &pattern, bool lowerCase=true)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns whether the string begins with the pattern passed in. <a href="#Ogre_1_1StringUtile5"></a><br><br></td></tr> <tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StringUtil.html#Ogre_1_1StringUtile6">endsWith</a> (const <a class="el" href="namespaceOgre.html#a426">String</a> &str, const <a class="el" href="namespaceOgre.html#a426">String</a> &pattern, bool lowerCase=true)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns whether the string ends with the pattern passed in. <a href="#Ogre_1_1StringUtile6"></a><br><br></td></tr> <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="namespaceOgre.html#a426">String</a> </td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StringUtil.html#Ogre_1_1StringUtile7">standardisePath</a> (const <a class="el" href="namespaceOgre.html#a426">String</a> &init)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Method for standardising paths - use forward slashes only, end with slash. <a href="#Ogre_1_1StringUtile7"></a><br><br></td></tr> <tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StringUtil.html#Ogre_1_1StringUtile8">splitFilename</a> (const <a class="el" href="namespaceOgre.html#a426">String</a> &qualifiedName, <a class="el" href="namespaceOgre.html#a426">String</a> &outBasename, <a class="el" href="namespaceOgre.html#a426">String</a> &outPath)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Method for splitting a fully qualified filename into the base name and path. <a href="#Ogre_1_1StringUtile8"></a><br><br></td></tr> <tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StringUtil.html#Ogre_1_1StringUtile9">match</a> (const <a class="el" href="namespaceOgre.html#a426">String</a> &str, const <a class="el" href="namespaceOgre.html#a426">String</a> &pattern, bool caseSensitive=true)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Simple pattern-matching routine allowing a wildcard pattern. <a href="#Ogre_1_1StringUtile9"></a><br><br></td></tr> <tr><td colspan=2><br><h2>Static Public Attributes</h2></td></tr> <tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="namespaceOgre.html#a426">String</a> </td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StringUtil.html#Ogre_1_1StringUtils0">BLANK</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constant blank string, useful for returning by ref where local does not exist. <a href="#Ogre_1_1StringUtils0"></a><br><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> Utility class for manipulating Strings. <p> <p> Definition at line <a class="el" href="OgreString_8h-source.html#l00085">85</a> of file <a class="el" href="OgreString_8h-source.html">OgreString.h</a>.<hr><h2>Member Typedef Documentation</h2> <a class="anchor" name="Ogre_1_1StringUtilw0" doxytag="Ogre::StringUtil::StrStreamType" ></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> typedef std::stringstream <a class="el" href="classOgre_1_1StringUtil.html#Ogre_1_1StringUtilw0">Ogre::StringUtil::StrStreamType</a> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> <p> Definition at line <a class="el" href="OgreString_8h-source.html#l00088">88</a> of file <a class="el" href="OgreString_8h-source.html">OgreString.h</a>. </td> </tr> </table> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="Ogre_1_1StringUtile6" doxytag="Ogre::StringUtil::endsWith" ></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> bool Ogre::StringUtil::endsWith </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a426">String</a> & </td> <td class="mdname" nowrap> <em>str</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a426">String</a> & </td> <td class="mdname" nowrap> <em>pattern</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap>bool </td> <td class="mdname" nowrap> <em>lowerCase</em> = true</td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"><code> [static]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Returns whether the string ends with the pattern passed in. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign=top><em>pattern</em> </td><td>The pattern to compare with. </td></tr> <tr><td valign=top><em>lowerCase</em> </td><td>If true, the end of the string will be lower cased before comparison, pattern should also be in lower case. </td></tr> </table> </dl> </td> </tr> </table> <a class="anchor" name="Ogre_1_1StringUtile9" doxytag="Ogre::StringUtil::match" ></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> bool Ogre::StringUtil::match </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a426">String</a> & </td> <td class="mdname" nowrap> <em>str</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a426">String</a> & </td> <td class="mdname" nowrap> <em>pattern</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap>bool </td> <td class="mdname" nowrap> <em>caseSensitive</em> = true</td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"><code> [static]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Simple pattern-matching routine allowing a wildcard pattern. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign=top><em>str</em> </td><td>String to test </td></tr> <tr><td valign=top><em>pattern</em> </td><td>Pattern to match against; can include simple '*' wildcards </td></tr> <tr><td valign=top><em>caseSensitive</em> </td><td>Whether the match is case sensitive or not </td></tr> </table> </dl> </td> </tr> </table> <a class="anchor" name="Ogre_1_1StringUtile1" doxytag="Ogre::StringUtil::split" ></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> std::vector< <a class="el" href="namespaceOgre.html#a426">String</a> > Ogre::StringUtil::split </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a426">String</a> & </td> <td class="mdname" nowrap> <em>str</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a426">String</a> & </td> <td class="mdname" nowrap> <em>delims</em> = "\t\n", </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap>unsigned int </td> <td class="mdname" nowrap> <em>maxSplits</em> = 0</td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"><code> [static]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Returns a StringVector that contains all the substrings delimited by the characters in the passed <code>delims</code> argument. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign=top><em>delims</em> </td><td>A list of delimiter characters to split by </td></tr> <tr><td valign=top><em>maxSplits</em> </td><td>The maximum number of splits to perform (0 for unlimited splits). If this parameters is > 0, the splitting process will stop after this many splits, left to right. </td></tr> </table> </dl> </td> </tr> </table> <a class="anchor" name="Ogre_1_1StringUtile8" doxytag="Ogre::StringUtil::splitFilename" ></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void Ogre::StringUtil::splitFilename </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a426">String</a> & </td> <td class="mdname" nowrap> <em>qualifiedName</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap><a class="el" href="namespaceOgre.html#a426">String</a> & </td> <td class="mdname" nowrap> <em>outBasename</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap><a class="el" href="namespaceOgre.html#a426">String</a> & </td> <td class="mdname" nowrap> <em>outPath</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"><code> [static]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Method for splitting a fully qualified filename into the base name and path. <p> <dl compact><dt><b>Remarks:</b></dt><dd>Path is standardised as in standardisePath </dd></dl> </td> </tr> </table> <a class="anchor" name="Ogre_1_1StringUtile7" doxytag="Ogre::StringUtil::standardisePath" ></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a426">String</a> Ogre::StringUtil::standardisePath </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a426">String</a> & </td> <td class="mdname1" valign="top" nowrap> <em>init</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap><code> [static]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Method for standardising paths - use forward slashes only, end with slash. <p> </td> </tr> </table> <a class="anchor" name="Ogre_1_1StringUtile5" doxytag="Ogre::StringUtil::startsWith" ></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> bool Ogre::StringUtil::startsWith </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a426">String</a> & </td> <td class="mdname" nowrap> <em>str</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a426">String</a> & </td> <td class="mdname" nowrap> <em>pattern</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap>bool </td> <td class="mdname" nowrap> <em>lowerCase</em> = true</td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"><code> [static]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Returns whether the string begins with the pattern passed in. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign=top><em>pattern</em> </td><td>The pattern to compare with. </td></tr> <tr><td valign=top><em>lowerCase</em> </td><td>If true, the end of the string will be lower cased before comparison, pattern should also be in lower case. </td></tr> </table> </dl> </td> </tr> </table> <a class="anchor" name="Ogre_1_1StringUtile2" doxytag="Ogre::StringUtil::toLowerCase" ></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void Ogre::StringUtil::toLowerCase </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="namespaceOgre.html#a426">String</a> & </td> <td class="mdname1" valign="top" nowrap> <em>str</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap><code> [static]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Upper-cases all the characters in the string. <p> </td> </tr> </table> <a class="anchor" name="Ogre_1_1StringUtile4" doxytag="Ogre::StringUtil::toReal" ></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a420">Real</a> Ogre::StringUtil::toReal </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a426">String</a> & </td> <td class="mdname1" valign="top" nowrap> <em>str</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap><code> [static]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Converts the contents of the string to a Real. <p> <dl compact><dt><b>Remarks:</b></dt><dd>Assumes the only contents of the string are a valid parsable Real. Defaults to a value of 0.0 if conversion is not possible. </dd></dl> </td> </tr> </table> <a class="anchor" name="Ogre_1_1StringUtile3" doxytag="Ogre::StringUtil::toUpperCase" ></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void Ogre::StringUtil::toUpperCase </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="namespaceOgre.html#a426">String</a> & </td> <td class="mdname1" valign="top" nowrap> <em>str</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap><code> [static]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Lower-cases all the characters in the string. <p> </td> </tr> </table> <a class="anchor" name="Ogre_1_1StringUtile0" doxytag="Ogre::StringUtil::trim" ></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void Ogre::StringUtil::trim </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="namespaceOgre.html#a426">String</a> & </td> <td class="mdname" nowrap> <em>str</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap>bool </td> <td class="mdname" nowrap> <em>left</em> = true, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap>bool </td> <td class="mdname" nowrap> <em>right</em> = true</td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"><code> [static]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Removes any whitespace characters, be it standard space or TABs and so on. <p> <dl compact><dt><b>Remarks:</b></dt><dd>The user may specify wether they want to trim only the beginning or the end of the String ( the default action is to trim both). </dd></dl> </td> </tr> </table> <hr><h2>Member Data Documentation</h2> <a class="anchor" name="Ogre_1_1StringUtils0" doxytag="Ogre::StringUtil::BLANK" ></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> const <a class="el" href="namespaceOgre.html#a426">String</a> <a class="el" href="classOgre_1_1StringUtil.html#Ogre_1_1StringUtils0">Ogre::StringUtil::BLANK</a><code> [static]</code> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Constant blank string, useful for returning by ref where local does not exist. <p> <p> Definition at line <a class="el" href="OgreString_8h-source.html#l00162">162</a> of file <a class="el" href="OgreString_8h-source.html">OgreString.h</a>. </td> </tr> </table> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="OgreString_8h-source.html">OgreString.h</a></ul> <p> Copyright © 2000-2005 by The OGRE Team<br /> Last modified Wed Feb 23 00:24:00 2005 </p> </body> </html>