BloombergLP::bdlb::StringRefUtil

This struct provides a namespace for a suite of functions on bslstl::StringRef references to strings.

Synopsis

Declared in <bdlb_stringrefutil.h>

struct StringRefUtil;

Type Aliases

NameDescription
size_type Size type of string references.

Static Member Functions

NameDescription
areEqualCaseless Compare (the referent data of) the specified lhs and rhs. Return true if lhs and rhs are equal up to a case conversion, and false otherwise. See {Caseless Comparisons}.
findFirstNotOf Return the position of the first occurrence of a character not belonging to the specified characters, if such an occurrence can be found in the specified string (on or after the optionally specified position if such a position is specified), and return k_NPOS otherwise.
findFirstOf Return the position of the first occurrence of a character belonging to the specified characters, if such an occurrence can can be found in the specified string (on or after the optionally specified position if such a position is specified), and return k_NPOS otherwise.
findLastNotOf Return the position of the last occurrence of a character not belonging to the specified characters, if such an occurrence can be found in the specified string (on or before the optionally specified position if such a position is specified), and return k_NPOS otherwise.
findLastOf Return the position of the last occurrence of a character belonging to the specified characters, if such an occurrence can can be found in the specified string (on or before the optionally specified position if such a position is specified), and return k_NPOS otherwise.
lowerCaseCmp Compare (the referent data of) the specified lhs and rhs. Return 1 if, after a conversion to lower case, lhs is greater than rhs, 0 if lhs and rhs are equal up to a case conversion, and -1 otherwise. See {Caseless Comparisons}.
ltrim Return a bslstl::StringRef object referring to the substring of (the referent data of) the specified string that excludes all leading whitespace. See {Whitespace Character Specification}. If string consists entirely of whitespace, return a zero-length reference to the end of string (i.e., bslstl::StringRef(string.end(), 0)).
rtrim Return a bslstl::StringRef object referring to the substring of (the referent data of) the specified string that excludes all trailing whitespace. See {Whitespace Character Specification}. If string consists entirely of whitespace, return a zero-length reference to the beginning of (the referent data of) string (i.e., bslstl::StringRef(string.data(), 0)).
strrstr Return a bslstl::StringRef object referring to the last occurrence in (the referent data of) the specified string at which (the referent data of) the specified subString is found, or bslstl::StringRef() if there is no such occurrence. If subString has zero length then a zero-length reference to the end of string is returned (i.e., bslstl::StringRef(string.end(), 0));
strrstrCaseless Return a bslstl::StringRef object referring to the last occurrence in (the referent data of) the specified string at which (the referent data of) the specified subString is found using case-insensitive comparisons, or bslstl::StringRef() if there is no such occurrence. See {Caseless Comparisons}. If subString has zero length then a zero-length reference to the end of string is returned (i.e., bslstl::StringRef(string.end(), 0));
strstr Return a bslstl::StringRef object referring to the first occurrence in (the referent data of) the specified string at which (the referent data of) the specified subString is found, or bslstl::StringRef() if there is no such occurrence. If subString has zero length then a zero-length reference to the beginning of string is returned (i.e., bslstl::StringRef(string.data(), 0));
strstrCaseless Return a bslstl::StringRef object referring to the first occurrence in (the referent data of) the specified string at which (the referent data of) the specified subString is found using case-insensitive comparisons, or bslstl::StringRef() if there is no such occurrence. See {Caseless Comparisons}. If subString has zero length then a zero-length reference to the beginning of string is returned (i.e., bslstl::StringRef(string.data(), 0));
substr Return a string whose value is the substring starting at the optionally specified position in the specified string, of length the optionally specified numChars or length() - position, whichever is smaller. If position is not specified, 0 is used (i.e., the substring is from the beginning of this string). If numChars is not specified, k_NPOS is used (i.e., the entire suffix from position to the end of the string is returned). The behavior is undefined unless position is within the string boundaries (0 <= position <= string.length()).
trim Return a bslstl::StringRef object referring to the substring of (the referent data of) the specified string that excludes all leading and trailing whitespace. See {Whitespace Character Specification}. If string consists entirely of whitespace, return a zero-length reference to the beginning of (the referent data of) string (i.e., bslstl::StringRef(string.data(), 0)).
upperCaseCmp Compare (the referent data of) the specified lhs and rhs. Return 1 if, after a conversion to upper case, lhs is greater than rhs, 0 if lhs and rhs are equal up to a case conversion, and -1 otherwise. See {Caseless Comparisons}.

Static Data Members

NameDescription
k_NPOS Value used to denote "not-a-position", guaranteed to be outside the range[0 .. INT_MAX].