21xrx.com
2024-09-20 05:35:09 Friday
登录
文章检索 我的文章 写文章
C++实现从字符串中提取正整数
2023-07-13 01:27:54 深夜i     --     --
C++ 字符串 正整数 提取

C++是一种高效且灵活的计算机编程语言,可以被用于开发各种应用和程序,包括从字符串中提取正整数的操作。从字符串中提取正整数在日常生活中是很常见的需求,比如我们需要在一段文本中找到所有的电话号码或邮政编码。

下面是一个简单的C++函数,可以从一个字符串中提取所有的正整数:


#include <iostream>

#include <string>

#include <regex>

using namespace std;

int main()

{

  string str = "I have 3 apples, 5 oranges, and 2 bananas.";

  regex reg("\\d+");

  smatch match;

  while (regex_search(str, match, reg))

  {

    cout << match[0] << " ";

    str = match.suffix().str();

  }

  return 0;

}

在这个程序中,我们首先定义了一个字符串变量str,并将包含一些文本和数字。我们使用了正则表达式来匹配所有的正整数。正则表达式"\\d+"表示匹配一个或多个数字字符。我们使用了regex类来表示正则表达式,并使用smatch类来存储匹配到的结果。

使用regex_search函数,在while循环中不断搜索str中的正整数。match变量存储了搜索到的匹配结果,match[0]表示正则表达式匹配的第一个子字符串。我们将匹配结果打印到控制台上,并使用match.suffix().str()函数,取得剩余字符串并更新str,以便进行下一轮匹配。

通过这个简单的C++程序,我们可以轻松提取出一个字符串中所有的正整数。这个方法可以应用于各种场合,比如数据处理、文本分析以及网络爬虫等。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复