A class for handling character strings derived from std::string. More...
Classes | |
class | hash |
Hashing function class, shared by all the derived classes. More... | |
Public Member Functions | |
string () | |
Construct null. More... | |
string (const std::string &) | |
Construct from std::string. More... | |
string (const string &) | |
Copy constructor. More... | |
string (string &&) | |
Move constructor. More... | |
string (const char *) | |
Construct as copy of character array. More... | |
string (const UList< char > &) | |
Construct as copy of UList of character. More... | |
string (const char *, const size_type) | |
Construct as copy of specified number of characters. More... | |
string (const char) | |
Construct from a single character. More... | |
string (const size_type, const char) | |
Construct from copies of a single character. More... | |
string (Istream &) | |
Construct from Istream. More... | |
size_type | count (const char) const |
Count and return the number of a given character in the string. More... | |
bool | match (const std::string &) const |
True when strings match literally. More... | |
string & | replace (const string &oldStr, const string &newStr, size_type start=0) |
Replace first occurrence of sub-string oldStr with newStr. More... | |
string & | replaceAll (const string &oldStr, const string &newStr, size_type start=0) |
Replace all occurrences of sub-string oldStr with newStr. More... | |
string & | expand (const bool allowEmpty=false) |
Expand initial tildes and all occurrences of environment variables. More... | |
bool | removeRepeated (const char) |
Remove repeated characters returning true if string changed. More... | |
string | removeRepeated (const char) const |
Return string with repeated characters removed. More... | |
bool | removeTrailing (const char) |
Remove trailing character returning true if string changed. More... | |
string | removeTrailing (const char) const |
Return string with trailing character removed. More... | |
bool | removeTrailing (const string &) |
Remove trailing string returning true if string changed. More... | |
string | removeTrailing (const string &) const |
Return string with trailing string removed. More... | |
void | strip (const string &) |
Strip characters from the start and end of the string. More... | |
string | operator() (const size_type i, const size_type n) const |
Return the sub-string from the i-th character for n characters. More... | |
string | operator() (const size_type n) const |
Return the sub-string from the first character for n characters. More... | |
void | operator= (const string &) |
void | operator= (string &&) |
template<class String > | |
Foam::string | quotemeta (const string &str, const char quote) |
Static Public Member Functions | |
template<class String > | |
static bool | valid (const string &) |
Is this string type valid? More... | |
template<class String > | |
static bool | meta (const string &, const char quote='\\') |
Does this string have particular meta-characters? More... | |
template<class String > | |
static bool | stripInvalid (string &) |
Strip invalid characters from the given string. More... | |
template<class String > | |
static String | validate (const string &) |
Return a valid String from the given string. More... | |
template<class String > | |
static string | quotemeta (const string &, const char quote='\\') |
Return a String with quoted meta-characters from the given string. More... | |
Static Public Attributes | |
static const char *const | typeName = "string" |
static int | debug |
static const string | null |
An empty string. More... | |
Friends | |
Istream & | operator>> (Istream &, string &) |
Ostream & | operator<< (Ostream &, const string &) |
A class for handling character strings derived from std::string.
Strings may contain any characters and therefore are delimited by quotes for IO : "any list of characters".
Used as a base class for word and fileName.
|
inline |
Construct null.
Definition at line 30 of file stringI.H.
Referenced by fileName::caseName(), and string::hash::hash().
|
inline |
|
inline |
|
inline |
Construct from Istream.
Definition at line 31 of file stringIO.C.
Foam::string::size_type count | ( | const char | c | ) | const |
Count and return the number of a given character in the string.
Definition at line 47 of file string.C.
References string::replace().
Referenced by string::hash::hash(), string::strip(), OSstream::write(), and OSstream::writeQuoted().
|
inlinestatic |
Is this string type valid?
Definition at line 79 of file stringI.H.
Referenced by string::hash::hash().
|
inlinestatic |
Does this string have particular meta-characters?
The meta characters can be optionally quoted.
Definition at line 127 of file stringI.H.
Referenced by string::hash::hash().
|
inlinestatic |
Strip invalid characters from the given string.
Definition at line 93 of file stringI.H.
References Foam::constant::universal::c.
Referenced by string::hash::hash().
|
inlinestatic |
Return a valid String from the given string.
Definition at line 187 of file stringI.H.
Referenced by string::hash::hash().
Return a String with quoted meta-characters from the given string.
Referenced by string::hash::hash().
|
inline |
True when strings match literally.
Definition at line 194 of file stringI.H.
Referenced by string::hash::hash(), and convergenceControl::residualControlIndex().
Foam::string & replace | ( | const string & | oldStr, |
const string & | newStr, | ||
size_type | start = 0 |
||
) |
Replace first occurrence of sub-string oldStr with newStr.
starting at start
Definition at line 64 of file string.C.
References string::replaceAll().
Referenced by fileName::caseName(), string::count(), argList::displayDoc(), string::hash::hash(), objectRegistry::rename(), cellMotionFvPatchField< Type >::updateCoeffs(), and graph::wordify().
Foam::string & replaceAll | ( | const string & | oldStr, |
const string & | newStr, | ||
size_type | start = 0 |
||
) |
Replace all occurrences of sub-string oldStr with newStr.
starting at start
Definition at line 82 of file string.C.
Referenced by string::hash::hash(), error::operator()(), Foam::printSourceFileAndLine(), and string::replace().
Foam::string & expand | ( | const bool | allowEmpty = false | ) |
Expand initial tildes and all occurrences of environment variables.
Expansion includes:
Any unknown entries are removed silently if allowEmpty is true
Definition at line 103 of file string.C.
References Foam::stringOps::inplaceExpand().
Referenced by argList::displayDoc(), string::hash::hash(), TableFileReader< Type >::read(), and triSurfaceMesh::writeObject().
bool removeRepeated | ( | const char | character | ) |
Remove repeated characters returning true if string changed.
Definition at line 110 of file string.C.
References Foam::constant::universal::c, n, and resize().
Referenced by string::hash::hash(), and string::removeRepeated().
Foam::string removeRepeated | ( | const char | character | ) | const |
Return string with repeated characters removed.
Definition at line 146 of file string.C.
References string::removeRepeated().
bool removeTrailing | ( | const char | character | ) |
Remove trailing character returning true if string changed.
Definition at line 154 of file string.C.
Referenced by string::hash::hash(), Reaction< ReactionThermo >::New(), and string::removeTrailing().
Foam::string removeTrailing | ( | const char | character | ) | const |
Return string with trailing character removed.
Definition at line 169 of file string.C.
References string::removeTrailing().
bool removeTrailing | ( | const string & | str | ) |
Remove trailing string returning true if string changed.
Definition at line 177 of file string.C.
References n, string::operator()(), and resize().
Foam::string removeTrailing | ( | const string & | str | ) | const |
Return string with trailing string removed.
Definition at line 192 of file string.C.
References string::removeTrailing().
void strip | ( | const string & | str | ) |
Strip characters from the start and end of the string.
Definition at line 200 of file string.C.
References string::count(), and resize().
Referenced by string::hash::hash().
|
inline |
Return the sub-string from the i-th character for n characters.
Definition at line 204 of file stringI.H.
References n.
Referenced by string::removeTrailing().
|
inline |
|
inline |
Definition at line 229 of file stringI.H.
Referenced by string::hash::hash(), verbatimString::operator=(), variable::operator=(), word::operator=(), keyType::operator=(), wordRe::operator=(), fileName::operator=(), and wordRe::set().
|
inline |
Referenced by string::hash::hash().
Referenced by string::hash::hash().
|
static |
Definition at line 84 of file string.H.
Referenced by token::anyStringToken(), and token::stringToken().
|
static |
An empty string.
Definition at line 88 of file string.H.
Referenced by token::anyStringToken(), argList::displayDoc(), Foam::domainName(), token::stringToken(), Foam::userName(), and OFstreamCollator::write().