使用正则表达式的C++程序打印每个单词的首字母

使用正则表达式的c++程序打印每个单词的首字母

A useful tool for string operations is regex. This may be found in virtually all high-level当前的编程语言,包括C++。正则表达式(Regex)被用作通用搜索模式。例如,通过构建一个简单的字符串被称为正则表达式,我们可以使用至少实现密码验证逻辑一个大写字母,一个小写字母,一个数字,一个特殊字符,并且总长度至少为8个字符。

In this tutorial, we’ll look at how to use C++ to display only the first letters of words included在指定的字符串内。在这里,我们将看一个使用空格来分隔单词的句子无论字符是大写还是小写,计算机都会读取将字符串使用正则表达式分割,并返回每个单词的第一个字符。

To use regular expressions, we need to import the regex library using the ‘regex’ header. To使用正则表达式,我们需要以下语法 –

语法(创建正则表达式对象)

regex obj_name(  )

After defining regex, we can use them in multiple ways. We will see our intended approach在下面。现在要从单词中读取第一个字符,正则表达式的语法将会是这样的下面的内容为:

语法(读取单词的第一个字符)

b[a-zA-Z]

在这里,‘b’表示单词的开头。[a-zA-Z]表示大写或小写字母lowercase letters which are in the range of ‘a’ to ‘z’ or ‘A’ to ‘Z’. And only one of them istaken. 现在让我们看一下正在用于读取所有选定匹配项的迭代器对象 –

语法(正则表达式迭代器)

regex_token_iterator iterator_name( , , , );

在这个迭代器中,前两个参数是起始和结束指针的string object. The third parameter is the given regular expression object which we have在之前创建。第四个参数是子匹配。当子匹配为0时,它将返回那些来自匹配的元素(在匹配时)的内容,当submatch is -1, it represents where the matching is not done (reverse of the submatch 0).submatch为-1,表示匹配未完成的位置(与submatch 0相反)

算法

将字符串 s 作为输入define regular expression with ‘b[a-zA-Z]’对s使用表达式进行匹配定义一个迭代器对象来仅读取匹配项for each item in iterator object, do显示项目结束循环

Example

#include #include using namespace std;string solve( string s){   string ret = "";   regex e("b[a-zA-Z]");   regex_token_iterator i(s.begin(), s.end(), e, 0);   regex_token_iterator end;   while (i != end) {      ret += (*i++);      ret += ", ";   }   return ret;}int main(){   string s = "A string to read only the first letter of words";   cout << "Given String: " << s << endl;   cout << "The first letter of each word: " << solve( s ) << endl;   s = "Central Pollution Control Board";   cout << "Given String: " << s << endl;   cout << "The first letter of each word: " << solve( s ) << endl;}

输出

Given String: A string to read only the first letter of wordsThe first letter of each word: A, s, t, r, o, t, f, l, o, w, Given String: Central Pollution Control BoardThe first letter of each word: C, P, C, B, 

Conclusion

表达式在字符串中用于匹配常见模式表达式库(正则表达式)在所有高级语言中都可用,包括Java,PythonJavascript,Dart和C++。它有许多应用。一个正则表达式,reads the first character of each word has been defined in this article. We need an iterator,它会逐个读取每个匹配的字符,以便循环遍历它们。

以上就是使用正则表达式的C++程序打印每个单词的首字母的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1443571.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月17日 20:18:29
下一篇 2025年12月9日 18:17:24

相关推荐

  • 使用赋值运算符计算带税金额的C程序

    问题 编写一个 C 程序,输入美元金额,然后添加 18% 的税金来显示金额。 解决方案 让我们考虑餐厅人员在顾客的每张账单上加收 18% 的税。 用于计算税的逻辑是 – value=(money + (money * 0.18)); 这笔钱应该乘以18%并添加到钱中,然后餐厅人员可以从顾…

    2025年12月17日
    000
  • C++程序来计算给定弧度值的双曲正弦

    普通三角函数类似于双曲函数,它们是使用双曲线而不是圆来定义的。在双曲几何中,双曲函数用于计算角度和距离。此外,它们还出现在许多线性微分方程、三次方程等的答案中。对于给定的角度$theta$。双曲正弦函数 sinh$(theta)$ 如下所示。 $$mathrm{sinh(x):=:frac{e^x:…

    2025年12月17日
    000
  • C++程序以找到给定值的反正切

    我们在三角学中最常使用的比率包括正弦、余弦、正切等等。您可以使用角度来计算这些比率。如果我们知道比率值,我们还可以使用反三角函数计算角度。 本课程将向您展示如何使用 C++ 的反正切 (arctan) 函数,使用正切值(以弧度为单位)计算角度。 atan() 函数 使用 atan() 技术和反三角正…

    2025年12月17日
    000
  • C程序计算线性回归

    问题 编写一个程序来实现线性回归算法。 用户需要输入总共的数值个数。 解决方案 使用C编程语言计算线性回归的解决方案如下: 线性回归通过将线性方程与观测数据相连接来找到两个变量之间的关系。一个变量是解释变量,另一个是因变量。 关于线性回归的逻辑如下所述: for(i=0;i<n;i++){ p…

    2025年12月17日
    000
  • C#如何使用正则表达式 C# Regex类常用方法详解

    C#正则表达式核心是Regex类,常用静态方法:IsMatch(布尔判断)、Match(首个匹配详情)、Matches(全部匹配)、Replace(替换);高频场景建议预编译实例以提升性能。 C# 中使用正则表达式,核心是 System.Text.RegularExpressions.Regex 类…

    2025年12月17日
    000
  • C#怎么使用GeneratedRegex C# 7正则表达式源生成器

    GeneratedRegex 是 .NET 7 引入的正则表达式源生成器,编译时将字符串字面量转换为高效、类型安全的静态方法,避免运行时编译开销和反射,提升性能并增强 IDE 支持。 GeneratedRegex 是 .NET 7 引入的正则表达式源生成器(Source Generator),它在编…

    2025年12月17日
    000
  • .NET性能优化技巧:让你的应用程序快如闪电

    通过异步编程、减少对象分配、高效使用集合与LINQ、启用编译优化等手段可显著提升.NET应用性能,建议优先优化热点路径并利用分析工具定位瓶颈。 提升 .NET 应用程序的性能并不需要重写整个系统。通过一些关键优化策略,你可以显著减少响应时间、降低内存占用,并提高吞吐量。以下是一些实用且高效的 .NE…

    2025年12月17日
    000
  • C#中动态生成XML的注意事项 如何从源头避免解析错误

    使用XDocument和XmlWriter避免字符串拼接,自动转义特殊字符,校验元素名合法性,合理使用CDATA,输出前验证结构,可有效预防XML解析错误。 在C#中动态生成XML时,确保结构合法、内容安全是避免解析错误的关键。很多运行时异常其实可以在编码阶段就预防。核心思路是从数据源头控制格式,遵…

    2025年12月17日
    000
  • C#怎么进行正则表达式匹配 C# Regex类的使用方法

    C#中正则匹配依赖System.Text.RegularExpressions.Regex类,常用方法包括IsMatch判断匹配、Match/Matches提取结果、Replace替换、Split分割,支持选项设置与常见格式验证。 在C#中进行正则表达式匹配主要依靠 System.Text.Regu…

    2025年12月17日
    000
  • 使用正则表达式辅助C#解析XML 在特定场景下解决棘手问题

    正则表达式可辅助C#处理非标准XML,通过修复标签、提取片段、统一命名空间前缀等方式预处理数据,再交由XDocument等解析,适用于日志解析、残缺响应等场景,但仅限已知模式修复,不可替代完整XML解析。 在处理XML数据时,C# 提供了如 XmlDocument、XDocument 和 XmlRe…

    2025年12月17日
    000
  • C# XmlDocument加载错误排查 常见的5个原因及解决方案

    XML格式错误需确保标签闭合、属性加引号,用XmlException定位问题;2. 文件路径错误应检查路径存在性与权限;3. 编码不匹配需使文件实际编码与声明一致,用StreamReader指定编码读取;4. 无效字符需用正则清理或避免手动拼接XML;5. DTD或外部实体问题应通过XmlReade…

    2025年12月17日
    000
  • .NET中的正则表达式(Regex):模式匹配与文本处理的强大工具

    .NET 中的正则表达式通过 Regex 类实现,支持匹配、提取、替换和分割操作。1. 使用 Regex.Match 获取首个匹配项,Regex.Matches 提取所有结果;2. 通过 Regex.Replace 替换文本,Regex.Split 按模式分割;3. 常用元字符如 d、w、.、^、$…

    2025年12月17日
    000
  • C# 如何使用正则表达式进行字符串匹配_C# 正则表达式字符串匹配教程

    C#中使用Regex类处理字符串匹配,需引入System.Text.RegularExpressions命名空间。1. Regex.IsMatch判断是否匹配,如验证手机号:@”^1[3-9]d{9}$”;2. Regex.Match返回首个匹配项,可提取邮箱等信息;3. R…

    2025年12月17日
    000
  • C#中的正则表达式怎么写?常用C#正则表达式语法与实例大全

    C#中使用Regex类处理正则表达式,需引入System.Text.RegularExpressions命名空间,常用功能包括匹配、替换、拆分和提取;基本语法支持d、w、s等符号,可验证手机号、邮箱,提取数字,替换敏感词,拆分字符串,解析URL域名等;通过捕获组和命名捕获提升可读性,性能优化建议使用…

    2025年12月17日
    000
  • C#的Regex类是什么?如何使用正则表达式进行文本匹配?

    C# 的 Regex 类用于正则表达式操作,支持匹配、查找、替换和分割文本。通过引入 System.Text.RegularExpressions 命名空间,可使用 Regex.IsMatch 判断是否匹配,Regex.Match 获取首个匹配项,Regex.Matches 获取所有匹配,Regex…

    2025年12月17日
    000
  • .NET Web API如何进行模型验证_Web API模型验证实现方式

    答案:.NET Web API 模型验证通过数据注解、自定义特性、IValidatableObject 和全局过滤器实现,确保数据合法性。使用 [Required]、[StringLength] 等特性可自动验证字段;自定义 ValidationAttribute 支持复杂规则如用户名不含邮箱前缀;…

    2025年12月17日
    000
  • .NET中如何使用正则表达式进行文本匹配

    .NET中使用Regex类进行文本匹配,需引入System.Text.RegularExpressions命名空间,通过IsMatch判断匹配,Match/Matches提取内容,Replace替换文本,建议编译常用表达式以提升性能。 在.NET中使用正则表达式进行文本匹配非常常见,主要通过 Sys…

    2025年12月17日
    000
  • .NET中如何使用正则表达式进行文本匹配_正则表达式文本匹配方法

    答案是掌握.NET中Regex类的IsMatch、Match和Matches方法可实现文本匹配。通过System.Text.RegularExpressions命名空间引入支持,创建Regex对象后,用IsMatch验证字符串(如邮箱),Match提取首个匹配项,Matches获取所有匹配结果,适用…

    2025年12月17日
    000
  • ASP.NET Core 中的路由约束如何定义?

    路由约束用于限制URL占位符匹配,如{ id:int }只匹配整数,支持类型、格式及范围验证,提升应用健壮性。 在 ASP.NET Core 中,路由约束用于限制 URL 路径中占位符的匹配方式,确保传入的参数符合特定格式或类型。通过定义约束,可以避免无效请求进入控制器,提升应用的健壮性。 使用内联…

    2025年12月17日
    000
  • .NET 中的安全编码实践有哪些?

    输入验证需白名单过滤并限制长度;2. 防范XSS、CSRF、SQL注入等Web漏洞;3. 敏感数据应加密存储且不记录日志;4. 实施最小权限与HTTPS安全传输;5. 结合工具持续进行安全检测与测试。 .NET 平台提供了丰富的功能和强大的运行时环境,但也带来了潜在的安全风险。编写安全的 .NET …

    2025年12月17日
    000

发表回复

登录后才能评论
关注微信