C++ 中的 match_results prefix() 和 suffix()2024 年 8 月 29 日 | 4 分钟阅读 在本文中,您将学习 C++ 中 match_results prefix() 和 suffix() 的语法和示例。但在介绍 prefix() 和 suffix() 函数之前,您必须了解 C++ 中的正则表达式。 C++ 中,由 <regex> 头文件提供的正则表达式与 std::match_results 类模板结合使用。匹配结果由变量 match_results 表示,它是将正则表达式与字符串进行比较的结果。C++ 中的 <regex> 头文件提供了用于处理正则表达式的函数。std::match_results 类模板表示正则表达式与字符串匹配的结果。
让我们更详细地研究 std::prefix() 和 suffix() 成员函数。 std::sub_match 类模板表示匹配的子字符串或与正则表达式匹配的原始文本段。它保存了有关字符串匹配部分的信息,例如匹配的长度和在原始字符串中的位置,以及其他有用的数据。 当您使用 match.prefix() 或 match.suffix() 时,您将获得一个名为 std::sub_match 的对象,其中 match 是 std::match_results 的对象。之后,您可以处理此 std::sub_match 对象以获取有关前缀或后缀的信息,包括文本的长度、位置和其他数据。 "prefix()"std::sub_match 对象是一个成员函数,它返回匹配子字符串之前出现的文本。匹配前缀的详细信息包含在 std::sub_match 中。 match_results::prefix() 是 C++ 内置函数,用于检索输入目标字符串中匹配字符串之前的字符串。 语法它具有以下语法: 注意:smatch_name 是 match_results 类的对象。参数:此函数不接受任何参数。 返回值:此函数返回目标字符串中匹配序列之前的序列。 "suffix()"与 prefix() 类似,suffix() 会生成一个对象,其中包含匹配子字符串之后出现的文本,即 std::sub_match。它包含有关相应后缀的详细信息。 match_results::suffix() 是 C++ 内置函数,用于检索输入目标字符串中匹配字符串之后出现的字符串。 语法它具有以下语法: 注意:smatch_name 是 match_results 类的对象。参数:此函数不接受任何参数。 返回值:此函数返回目标字符串中匹配序列之前的序列。 示例让我们举一个例子来说明 C++ 中 match_results prefix() 和 suffix() 函数的用法。 输出 Matched: Hello Prefix: Suffix: World! This is a sample text. ----------------- Matched: World Prefix: , Suffix:! This is a sample text. ----------------- Matched: This Prefix:! Suffix: is a sample text. ----------------- Matched: is Prefix: Suffix: a sample text. ----------------- Matched: a Prefix: Suffix: sample text. ----------------- Matched: sample Prefix: Suffix: text. ----------------- Matched: text Prefix: Suffix: ----------------- 说明
使用 std::sregex_iterator 遍历给定文本中正则表达式模式的所有匹配项。对于每个匹配项,match.prefix() 返回匹配子字符串之前的文本,而 matching.suffix() 获取匹配子字符串之后的文本。 内容包含正则表达式 \\b\\w+\\b 匹配的单词。循环会打印找到的每个单词及其前缀(单词之前的文本)和后缀(单词之后的文本)。 它除了允许您提取匹配的子字符串以及每个匹配项之前和之后出现的文本之外,还为您提供了有关文本中检测到的匹配项的上下文信息。 结论
|
在本文中,我们将讨论带有不同方法的 C++ 哨兵线性搜索程序。但在讨论它们的实现之前,我们必须了解 C++ 中的哨兵线性搜索。什么是哨兵线性搜索?“哨兵线性搜索”是线性搜索的一个变体...
11 分钟阅读
公司办公室使用的系统范围从中、能源和食品饮料领域不等。教育、IT 或非 IT 行业已从旧的 32 位版本迁移到 64 位版本。我们使用编译器来执行 C 或 C++ 编程语言代码 GCC 或 clang....
阅读 3 分钟
系统编程、游戏开发和高性能应用程序是 C++ 作为一种健壮且适应性强的编程语言广泛应用的众多领域。开发人员经常使用集成开发环境 (IDE),它提供高级工具和功能来简化开发过程,以利用...
5 分钟阅读
在本文中,我们将讨论其语法和示例。btown() 函数是 C 中的一个标准库函数,它将单字节字符转换为宽字符。它用于将单字节字符转换为相应的宽字符,接受...
阅读 3 分钟
在本文中,您将了解其语法和示例。unordered_multimap key_eq 函数是什么?在 C++ 语言中,unordered_multimap 是一种容器,允许具有相同键的多个元素。在此函数中,允许重复键。key_eq 成员函数是...
阅读 3 分钟
在本文中,您将学习 C++ 中 std::quick_exit 和 std::abort 之间的区别。但在讨论它们的区别之前,您必须了解 C++ 中的 std::quick_exit 和 std::abort。std::quick_exit 是什么?std::quick_exit 是 C++ 中的一个函数,它提供了一种终止程序的方法...
11 分钟阅读
在本文中,我们将讨论 C++ 中用于竞争性编程的 10 个最常用的内置函数。C++ 内置函数介绍 C++ 中的集成功能通常称为通用库功能或通过 C++ 标准模板库 (STL) 提供的功能。这些功能涵盖了广泛的...
阅读9分钟
C++ 标准库提供了各种高效的容器。这些容器只是各种存储数据结构的模式版本。标准库中算法和迭代器的模板化实现等替代版本也可用。但是,容器仅用于存储项目....
阅读 4 分钟
简介:数学家和计算机科学家一直着迷于对称的序列,它们向前和向后读都相同。有效识别回文子串是计算机科学中的一个常见挑战。Manacher's Algorithm,一种由计算机科学家 Glenn Manacher 开发的开创性技术,提供了一种优雅的解决方案……
5 分钟阅读
在 C++ 中,关键字 static 用于为元素赋予独特的属性。Static 元素在程序生命周期中仅在静态存储区域分配一次存储空间。并且它们在整个程序中都有效。以下是 static 关键字的示例:具有...
阅读 3 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India