📄 vstring.h
字号:
* this string. If found, returns the index where it begins. If not * found, returns npos. */ size_type rfind(const _CharT* __s, size_type __pos = npos) const { __glibcxx_requires_string(__s); return this->rfind(__s, __pos, traits_type::length(__s)); } /** * @brief Find last position of a character. * @param c Character to locate. * @param pos Index of character to search back from (default 0). * @return Index of last occurrence. * * Starting from @a pos, searches backward for @a c within this string. * If found, returns the index where it was found. If not found, * returns npos. */ size_type rfind(_CharT __c, size_type __pos = npos) const; /** * @brief Find position of a character of string. * @param str String containing characters to locate. * @param pos Index of character to search from (default 0). * @return Index of first occurrence. * * Starting from @a pos, searches forward for one of the characters of * @a str within this string. If found, returns the index where it was * found. If not found, returns npos. */ size_type find_first_of(const __versa_string& __str, size_type __pos = 0) const { return this->find_first_of(__str.data(), __pos, __str.size()); } /** * @brief Find position of a character of C substring. * @param s String containing characters to locate. * @param pos Index of character to search from (default 0). * @param n Number of characters from s to search for. * @return Index of first occurrence. * * Starting from @a pos, searches forward for one of the first @a n * characters of @a s within this string. If found, returns the index * where it was found. If not found, returns npos. */ size_type find_first_of(const _CharT* __s, size_type __pos, size_type __n) const; /** * @brief Find position of a character of C string. * @param s String containing characters to locate. * @param pos Index of character to search from (default 0). * @return Index of first occurrence. * * Starting from @a pos, searches forward for one of the characters of * @a s within this string. If found, returns the index where it was * found. If not found, returns npos. */ size_type find_first_of(const _CharT* __s, size_type __pos = 0) const { __glibcxx_requires_string(__s); return this->find_first_of(__s, __pos, traits_type::length(__s)); } /** * @brief Find position of a character. * @param c Character to locate. * @param pos Index of character to search from (default 0). * @return Index of first occurrence. * * Starting from @a pos, searches forward for the character @a c within * this string. If found, returns the index where it was found. If * not found, returns npos. * * Note: equivalent to find(c, pos). */ size_type find_first_of(_CharT __c, size_type __pos = 0) const { return this->find(__c, __pos); } /** * @brief Find last position of a character of string. * @param str String containing characters to locate. * @param pos Index of character to search back from (default end). * @return Index of last occurrence. * * Starting from @a pos, searches backward for one of the characters of * @a str within this string. If found, returns the index where it was * found. If not found, returns npos. */ size_type find_last_of(const __versa_string& __str, size_type __pos = npos) const { return this->find_last_of(__str.data(), __pos, __str.size()); } /** * @brief Find last position of a character of C substring. * @param s C string containing characters to locate. * @param pos Index of character to search back from (default end). * @param n Number of characters from s to search for. * @return Index of last occurrence. * * Starting from @a pos, searches backward for one of the first @a n * characters of @a s within this string. If found, returns the index * where it was found. If not found, returns npos. */ size_type find_last_of(const _CharT* __s, size_type __pos, size_type __n) const; /** * @brief Find last position of a character of C string. * @param s C string containing characters to locate. * @param pos Index of character to search back from (default end). * @return Index of last occurrence. * * Starting from @a pos, searches backward for one of the characters of * @a s within this string. If found, returns the index where it was * found. If not found, returns npos. */ size_type find_last_of(const _CharT* __s, size_type __pos = npos) const { __glibcxx_requires_string(__s); return this->find_last_of(__s, __pos, traits_type::length(__s)); } /** * @brief Find last position of a character. * @param c Character to locate. * @param pos Index of character to search back from (default 0). * @return Index of last occurrence. * * Starting from @a pos, searches backward for @a c within this string. * If found, returns the index where it was found. If not found, * returns npos. * * Note: equivalent to rfind(c, pos). */ size_type find_last_of(_CharT __c, size_type __pos = npos) const { return this->rfind(__c, __pos); } /** * @brief Find position of a character not in string. * @param str String containing characters to avoid. * @param pos Index of character to search from (default 0). * @return Index of first occurrence. * * Starting from @a pos, searches forward for a character not contained * in @a str within this string. If found, returns the index where it * was found. If not found, returns npos. */ size_type find_first_not_of(const __versa_string& __str, size_type __pos = 0) const { return this->find_first_not_of(__str.data(), __pos, __str.size()); } /** * @brief Find position of a character not in C substring. * @param s C string containing characters to avoid. * @param pos Index of character to search from (default 0). * @param n Number of characters from s to consider. * @return Index of first occurrence. * * Starting from @a pos, searches forward for a character not contained * in the first @a n characters of @a s within this string. If found, * returns the index where it was found. If not found, returns npos. */ size_type find_first_not_of(const _CharT* __s, size_type __pos, size_type __n) const; /** * @brief Find position of a character not in C string. * @param s C string containing characters to avoid. * @param pos Index of character to search from (default 0). * @return Index of first occurrence. * * Starting from @a pos, searches forward for a character not contained * in @a s within this string. If found, returns the index where it * was found. If not found, returns npos. */ size_type find_first_not_of(const _CharT* __s, size_type __pos = 0) const { __glibcxx_requires_string(__s); return this->find_first_not_of(__s, __pos, traits_type::length(__s)); } /** * @brief Find position of a different character. * @param c Character to avoid. * @param pos Index of character to search from (default 0). * @return Index of first occurrence. * * Starting from @a pos, searches forward for a character other than @a c * within this string. If found, returns the index where it was found. * If not found, returns npos. */ size_type find_first_not_of(_CharT __c, size_type __pos = 0) const; /** * @brief Find last position of a character not in string. * @param str String containing characters to avoid. * @param pos Index of character to search from (default 0). * @return Index of first occurrence. * * Starting from @a pos, searches backward for a character not * contained in @a str within this string. If found, returns the index * where it was found. If not found, returns npos. */ size_type find_last_not_of(const __versa_string& __str, size_type __pos = npos) const { return this->find_last_not_of(__str.data(), __pos, __str.size()); } /** * @brief Find last position of a character not in C substring. * @param s C string containing characters to avoid. * @param pos Index of character to search from (default 0). * @param n Number of characters from s to consider. * @return Index of first occurrence. * * Starting from @a pos, searches backward for a character not * contained in the first @a n characters of @a s within this string. * If found, returns the index where it was found. If not found, * returns npos. */ size_type find_last_not_of(const _CharT* __s, size_type __pos, size_type __n) const; /** * @brief Find position of a character not in C string. * @param s C string containing characters to avoid. * @param pos Index of character to search from (default 0). * @return Index of first occurrence. * * Starting from @a pos, searches backward for a character not * contained in @a s within this string. If found, returns the index * where it was found. If not found, returns npos. */ size_type find_last_not_of(const _CharT* __s, size_type __pos = npos) const { __glibcxx_requires_string(__s); return this->find_last_not_of(__s, __pos, traits_type::length(__s)); } /** * @brief Find last position of a different character. * @param c Character to avoid. * @param pos Index of character to search from (default 0). * @return Index of first occurrence. * * Starting from @a pos, searches backward for a character other than * @a c within this string. If found, returns the index where it was * found. If not found, returns npos. */ size_type find_last_not_of(_CharT __c, size_type __pos = npos) const; /** * @brief Get a substring. * @param pos Index of first character (default 0). * @param n Number of characters in substring (default remainder). * @return The new string. * @throw std::out_of_range If pos > size(). * * Construct and return a new string using the @a n characters starting * at @a pos. If the string is too short, use the remainder of the * characters. If @a pos is beyond the end of the string, out_of_range * is thrown. */ __versa_string substr(size_type __pos = 0, size_type __n = npos) const { return __versa_string(*this, _M_check(__pos, "__versa_string::substr"), __n); } /** * @brief Compare to a string. * @param str String to compare against. * @return Integer < 0, 0, or > 0. * * Returns an integer < 0 if this string is ordered before @a str, 0 if * their values are equivalent, or > 0 if this string is ordered after * @a str. Determines the effective length rlen of the strings to * compare as the smallest of size() and str.size(). The function * then compares the two strings by calling traits::compare(data(), * str.data(),rlen). If the result of the comparison is nonzero returns * it, otherwise the shorter one is ordered first. */ int compare(const __versa_string& __str) const { if (this->_M_compare(__str)) return 0; const size_type __size = this->size(); const size_type __osize = __str.size(); const size_type __len = std::min(__size, __osize); int __r = traits_type::compare(this->_M_data(), __str.data(), __len); if (!__r) __r = __size - __osize; return __r; } /** * @brief Compare substring to a string. * @param pos Index of first character of substring. * @param n Number of characters in substring. * @param str String to compare against. * @return Integer < 0, 0, or > 0. * * Form the substring of this string from the @a n characters starting * at @a pos. Returns an integer < 0 if the substring is ordered * before @a str, 0 if their values are equivalent, or > 0 if the * substring is ordered after @a str. Determines the effective length * rlen of the strings to compare as the smallest of the length of the * substring and @a str.size(). The function then compares the two * strings by calling traits::compare(substring.data(),str.data(),rlen). * If the result of the comparison is nonzero returns it, otherwise the * shorter one is ordered first. */ int compare(size_type __pos, size_type __n, const __versa_string& __str) const; /** * @brief Compare substring to a substring. * @param pos1 Index of first character of substring. * @param n1 Number of characters in substring. * @param str String to compare against.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -