# Ogre::StringUtil Class Reference

Utility class for manipulating Strings. More...

`#include <OgreString.h>`

List of all members.

## Public Types

typedef std::ostringstream | StrStreamType

## Static Public Member Functions

static void | trim (String &str, bool left=true, bool right=true)
| Removes any whitespace characters, be it standard space or TABs and so on.
static std::vector< String > | split (const String &str, const String &delims="\t\n ", unsigned int maxSplits=0)
| Returns a StringVector that contains all the substrings delimited by the characters in the passed `delims` argument.
static void | toLowerCase (String &str)
| Upper-cases all the characters in the string.
static void | toUpperCase (String &str)
| Lower-cases all the characters in the string.
static bool | startsWith (const String &str, const String &pattern, bool lowerCase=true)
| Returns whether the string begins with the pattern passed in.
static bool | endsWith (const String &str, const String &pattern, bool lowerCase=true)
| Returns whether the string ends with the pattern passed in.
static String | standardisePath (const String &init)
| Method for standardising paths - use forward slashes only, end with slash.
static void | splitFilename (const String &qualifiedName, String &outBasename, String &outPath)
| Method for splitting a fully qualified filename into the base name and path.
static void | splitFullFilename (const Ogre::String &qualifiedName, Ogre::String &outBasename, Ogre::String &outExtention, Ogre::String &outPath)
| Method for splitting a fully qualified filename into the base name, extension and path.
static void | splitBaseFilename (const Ogre::String &fullName, Ogre::String &outBasename, Ogre::String &outExtention)
| Method for splitting a filename into the base name and extension.
static bool | match (const String &str, const String &pattern, bool caseSensitive=true)
| Simple pattern-matching routine allowing a wildcard pattern.

## Static Public Attributes

static const String | BLANK
| Constant blank string, useful for returning by ref where local does not exist.

## Detailed Description

Utility class for manipulating Strings.

Definition at line 64 of file OgreString.h.

## Member Typedef Documentation

typedef std::ostringstream Ogre::StringUtil::StrStreamType

| Definition at line 67 of file OgreString.h.

## Member Function Documentation

static bool Ogre::StringUtil::endsWith | ( | const String & | str,
|  | const String & | pattern,
|  | bool | lowerCase = `true`
| ) | `[static]`

Returns whether the string ends with the pattern passed in.

Parameters:

  | pattern | The pattern to compare with.
  | lowerCase | If true, the end of the string will be lower cased before comparison, pattern should also be in lower case.

static bool Ogre::StringUtil::match | ( | const String & | str,
|  | const String & | pattern,
|  | bool | caseSensitive = `true`
| ) | `[static]`

Simple pattern-matching routine allowing a wildcard pattern.

Parameters:

  | str | String to test
  | pattern | Pattern to match against; can include simple '*' wildcards
  | caseSensitive | Whether the match is case sensitive or not

static std::vector< String > Ogre::StringUtil::split | ( | const String & | str,
|  | const String & | delims = `"\t\n "`,
|  | unsigned int | maxSplits = `0`
| ) | `[static]`

Returns a StringVector that contains all the substrings delimited by the characters in the passed `delims` argument.

Parameters:

  | delims | A list of delimiter characters to split by
  | maxSplits | 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.

static void Ogre::StringUtil::splitBaseFilename | ( | const Ogre::String & | fullName,
|  | Ogre::String & | outBasename,
|  | Ogre::String & | outExtention
| ) | `[static]`

| Method for splitting a filename into the base name and extension.

static void Ogre::StringUtil::splitFilename | ( | const String & | qualifiedName,
|  | String & | outBasename,
|  | String & | outPath
| ) | `[static]`

Method for splitting a fully qualified filename into the base name and path.

Remarks:
  Path is standardised as in standardisePath

static void Ogre::StringUtil::splitFullFilename | ( | const Ogre::String & | qualifiedName,
|  | Ogre::String & | outBasename,
|  | Ogre::String & | outExtention,
|  | Ogre::String & | outPath
| ) | `[static]`

Method for splitting a fully qualified filename into the base name, extension and path.

Remarks:
  Path is standardised as in standardisePath

static String Ogre::StringUtil::standardisePath | ( | const String & | init | ) | `[static]`

| Method for standardising paths - use forward slashes only, end with slash.

static bool Ogre::StringUtil::startsWith | ( | const String & | str,
|  | const String & | pattern,
|  | bool | lowerCase = `true`
| ) | `[static]`

Returns whether the string begins with the pattern passed in.

Parameters:

  | pattern | The pattern to compare with.
  | lowerCase | If true, the end of the string will be lower cased before comparison, pattern should also be in lower case.

static void Ogre::StringUtil::toLowerCase | ( | String & | str | ) | `[static]`

| Upper-cases all the characters in the string.

static void Ogre::StringUtil::toUpperCase | ( | String & | str | ) | `[static]`

| Lower-cases all the characters in the string.

static void Ogre::StringUtil::trim | ( | String & | str,
|  | bool | left = `true`,
|  | bool | right = `true`
| ) | `[static]`

Removes any whitespace characters, be it standard space or TABs and so on.

Remarks:
  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).

## Member Data Documentation

const String Ogre::StringUtil::BLANK`[static]`

| Constant blank string, useful for returning by ref where local does not exist. Definition at line 151 of file OgreString.h.

The documentation for this class was generated from the following file:

- OgreString.h

Copyright © 2000-2005 by The OGRE Team
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Mon Aug 20 13:56:53 2007