Skip to content

Latest commit

 

History

History
18 lines (18 loc) · 1.29 KB

chapter10.md

File metadata and controls

18 lines (18 loc) · 1.29 KB

第10章 字符串和正则表达式

10.1 引言

  • C++标准库提供了string类型,使得程序员不必再使用C风格的文本处理方式--通过指针来处理字符数组。
  • C++标准库还提供了string_view类型,允许程序以容器方式访问字符序列,无论它们被存储在哪里(例如,在std::string或char[]中)。
  • string和regex都支持多种字符类型(如Unicode)。

10.2 字符串

  • 为了处理多字符集,标准库定义了一个通用的字符串模块basic_string,string实际上是此模板用字符类型char实例化的一个别名。

10.3 字符串视图

  • string_view类型的显著限制就在于它是只读的。

10.4 正则表达式

  • 在中,标准库为正则表达式提供了如下支持
    • regex_match():将正则表达式与一个(已知长度)字符串进行匹配。
    • regex_search():在一个(任意长的)数据流中搜索与正则表达式匹配的字符串。
    • regex_replace():在一个(任意长的)数据流中搜索与正则表达式匹配的字符串并将其替换。
    • regex_iterator:遍历匹配结果和子匹配。
    • regex_token_iterator:遍历未匹配部分。

10.5 建议

  • 只有迫不得已时,才使用c_str()data()获得string的C风格字符串表示。