- 本篇文章讲讲Boost库中String_Algorithm_Library常用的那些接口
- 参考
概述
<boost/algorithm/string/case_conv.hpp>:提供字符串大小写转换函数,包括to_lower()、to_upper()、to_title()、to_lower_copy()、to_upper_copy()和to_title_copy()。<boost/algorithm/string/classification.hpp>:提供用于判断字符分类的函数对象,如is_any_of、is_alpha、is_digit、is_space等。<boost/algorithm/string/compare.hpp>:提供字符串比较函数,包括is_equal()、ilexicographical_compare()、iless()和ilexicographical_compare()。<boost/algorithm/string/concept.hpp>:定义了用于实现字符串算法及其特征的概念、标准化和接口文档。<boost/algorithm/string/constants.hpp>:定义一些与字符串算法相关的常量,如空格字符、单引号、双引号等。<boost/algorithm/string/erase.hpp>:提供字符串删除函数,包括erase_first()、erase_nth()和erase_all()。<boost/algorithm/string/find.hpp>:提供字符串查找函数,包括find_first()、find_last()、find_nth()和find_all()。<boost/algorithm/string/find_format.hpp>:提供字符串查找并替换函数,包括replace_first()、replace_last()、replace_nth()和replace_all()。<boost/algorithm/string/find_iterator.hpp>:提供一系列查找字符串的迭代器,如find_iterator、token_iterator和split_iterator。<boost/algorithm/string/finder.hpp>:定义了在字符串中查找子串的算法,包括简单查找算法和 KMP 算法。<boost/algorithm/string/formatter.hpp>:定义了用于格式化输出字符串的函数对象,如repeat_formatter、range_formatter和join_formatter。<boost/algorithm/string/iter_find.hpp>:定义了一个类模板iter_find_t,可以在字符串中查找子串并返回迭代器。<boost/algorithm/string/join.hpp>:提供字符串连接函数,包括join()、join_if()和concat()。<boost/algorithm/string/predicate.hpp>:提供字符串谓词函数,包括starts_with()、ends_with()、contains()、equals()、iequals()和iless()。<boost/algorithm/string/regex.hpp>:提供与正则表达式相关的字符串函数,包括regex_match()、regex_search()、regex_replace()。<boost/algorithm/string/regex_find_format.hpp>:提供使用正则表达式查找并替换字符串的函数,包括regex_replace()和regex_transform()。<boost/algorithm/string/replace.hpp>:提供替换字符串函数,包括replace_first()、replace_last()、replace_nth()和replace_all()。<boost/algorithm/string/sequence_traits.hpp>:定义了判断序列类型的函数模板is_sequence,用于判断一个类型是否为序列。<boost/algorithm/string/split.hpp>:提供字符串分割函数,包括split()、split_if()和splitted()。<boost/algorithm/string/std_containers_traits.hpp>:定义了用于实现 STL 容器的特化模板sequence_traits。<boost/algorithm/string/trim.hpp>:提供字符串去除空格函数,包括trim()、trim_left()、trim_right()和trim_copy()。<boost/algorithm/string/trim_all.hpp>:提供字符串去除所有空格函数,包括trim_all()、trim_all_copy()。
0.<boost/algorithm/string/case_conv.hpp>
- to_lower():将一个字符串转换为全小写格式。
- to_upper():将一个字符串转换为全大写格式。
- to_title():将一个字符串所有单词的首字母转换为大写。
- to_lower_copy():生成一个全小写格式的副本。
- to_upper_copy():生成一个全大写格式的副本。
- to_title_copy():生成一个标题格式的副本。
1. <boost/algorithm/string/compare.hpp>:
该头文件提供字符串的比较函数。主要包括以下函数:
is_equal():用于判断两个字符串是否相等,可以指定比较大小写敏感或不敏感。ilexicographical_compare():用于比较字符串的字典序,可以指定比较大小写敏感或不敏感。iless():用于判断一个字符串是否小于另一个字符串,可以指定比较大小写敏感或不敏感。ilexicographical_compare():用于比较字符串的字典序,可以指定比较大小写敏感或不敏感。
2. <boost/algorithm/string/erase.hpp>:
该头文件提供了删除字符串子串的函数。主要包括以下函数:
erase_first():用于删除第一个出现的指定子串。erase_nth():用于删除第 n 个出现的指定子串。erase_all():用于删除所有出现的指定子串。
3. <boost/algorithm/string/find.hpp>:
该头文件提供了查找字符串子串的函数。主要包括以下函数:
find_first():用于查找第一个出现的指定子串,返回子串起始位置和结束位置。find_last():用于查找最后一个出现的指定子串,返回子串起始位置和结束位置。find_nth():用于查找第 n 个出现的指定子串,返回子串起始位置和结束位置。find_all():用于查找所有出现的指定子串,返回子串起始位置和结束位置的迭代器。
4. <boost/algorithm/string/find_format.hpp>:
该头文件提供了查找并替换字符串子串的函数。主要包括以下函数:
replace_first():用于查找并替换第一个出现的指定子串。replace_last():用于查找并替换最后一个出现的指定子串。replace_nth():用于查找并替换第 n 个出现的指定子串。replace_all():用于查找并替换所有出现的指定子串。
5. <boost/algorithm/string/finder.hpp>:
该头文件提供了在字符串中查找子串的算法。其中包含了一些简单查找算法和 KMP 算法。
6. <boost/algorithm/string/join.hpp>:
该头文件提供了连接多个字符串为一个字符串的函数。主要包括以下函数:
join():用于连接多个字符串,并添加指定的分隔符。join_if():用于只连接满足指定谓词条件的字符串,并添加指定的分隔符。concat():用于连接两个字符串。
7. <boost/algorithm/string/split.hpp>:
该头文件提供了将字符串分割为多个子串的函数。主要包括以下函数:
split():用于按指定分隔符分割字符串,并将结果存入一个容器中。split_if():用于根据指定谓词函数判断是否需要分割,并将结果存入一个容器中。splitted():用于返回按指定分隔符分割后的结果,作为一个可迭代对象使用。
8. <boost/algorithm/string/trim.hpp>:
该头文件提供了去除字符串首尾空白字符的函数。主要包括以下函数:
trim():用于去除字符串首尾空白字符。trim_left():用于去除字符串左侧空白字符。trim_right():用于去除字符串右侧空白字符。trim_copy():用于返回去除首尾空白字符后的字符串副本。
9. <boost/algorithm/string/regex.hpp>:
该头文件提供了与正则表达式相关的函数。主要包括以下函数:
regex_match():用于检测一个字符串是否符合正则表达式的模式。regex_search():用于在一个字符串中查找匹配正则表达式模式的子串。regex_replace():用于查找并替换匹配正则表达式模式的子串。
10. <boost/algorithm/string/regex_find_format.hpp>:
该头文件提供了使用正则表达式进行查找和替换的函数。主要包括以下函数:
regex_replace():用于通过正则表达式查找并替换字符串中的相应子串。regex_transform():用于通过正则表达式查找某些子串并返回一个格式化后的副本。
11. <boost/algorithm/string/replace.hpp>
头文件。该头文件提供了替换字符串子串的函数,主要包括以下函数:
replace_first_copy():用于替换第一个出现的指定子串,并返回替换后的字符串副本。replace_last_copy():用于替换最后一个出现的指定子串,并返回替换后的字符串副本。replace_nth_copy():用于替换第 n 个出现的指定子串,并返回替换后的字符串副本。replace_all_copy():用于替换所有出现的指定子串,并返回替换后的字符串副本。
此外,还有以下函数可以直接在原字符串上进行替换操作:
replace_first():用于替换第一个出现的指定子串。replace_last():用于替换最后一个出现的指定子串。replace_nth():用于替换第 n 个出现的指定子串。replace_all():用于替换所有出现的指定子串。