c++使用正则表达式提取关键字的方法

下面看下c++通过正则表达式提取关键字,代码如下所示:

string text = "岳云鹏的对象叫铁锤";
  regex pattern("(.*)的对象叫(.*)");
 smatch results;
  if (regex_match(text, results, pattern)) {
   for (auto it = results.begin(); it != results.end(); ++it)
    cout << *it << endl;
  }
  else {
   cout << "match failed: " << text << endl;
  }
  // 岳云鹏的对象叫铁锤
 // 岳云鹏
 // 铁锤

下面看下C++正则表达式提取匹配到的字符串

/*
 * 输入是789.123.456, 输出的是789
 */
void get()
{
 std::regex ip_reg("(.*)\.123\.456");
 std::smatch matchResult;
  string inputStr;
  std::getline(std::cin,inputStr);
  //正则匹配
  if (std::regex_match(inputStr,matchResult,ip_reg))
  {
   cout << "Match: ";
   //打印子表达式结果
   for (size_t i = 1; i < matchResult.size(); ++i)
   {
    cout << matchResult[i] << " ";
   }
  }
  else
  {
   cout << "Not Match!";
  }
 }

总结

以上所述是小编给大家介绍的c++使用正则表达式提取关键字的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • 正则表达式简介及在C++11中的简单使用教程

    正则表达式Regex(regular expression)是一种强大的描述字符序列的工具.在许多语言中都存在着正则表达式,C++11中也将正则表达式纳入了新标准的一部分,不仅如此,它还支持了6种不同的正则表达式的语法,分别是:ECMASCRIPT.basic.extended.awk.grep和egrep.其中ECMASCRIPT是默认的语法,具体使用哪种语法我们可以在构造正则表达式的时候指定. 正则表达式是一种文本模式.正则表达式是强大.便捷.高效的文本处理工具.正则表达式本身,加上如同一门

  • c++11中regex正则表达式示例简述

    regex库中涉及到的主要类型有: 以std::string为代表的处理字符串的类型(我们知道还有存储wchar_t的wstring类.原生c式字符串const char*等等,为了简化处理仅介绍std::string类型相关的操作,当你把握住了regex的主脉络之后,想使用其他的版本只要类比就可以) std::regex类,该类型需要一个代表正则表达式的字符串和一个文法选项作为输入,当文法选项不提供时默认为ECMAScript. std::match_results类,该类用来记录匹配的结果,

  • c++使用正则表达式提取关键字的方法

    下面看下c++通过正则表达式提取关键字,代码如下所示: string text = "岳云鹏的对象叫铁锤"; regex pattern("(.*)的对象叫(.*)"); smatch results; if (regex_match(text, results, pattern)) { for (auto it = results.begin(); it != results.end(); ++it) cout << *it << endl

  • 使用正则表达式屏蔽关键字的方法

    [问题]关键字屏蔽是社交类软件必做的功能,当然了,一般来讲都是产品的中后期来做:不同产品规定不一样,跟着产品运营走,可以的 [方法]我们从技术的角度来看到这个问题,实现一个功能后者说实现一个需求,其方法是多种多样的,重点是找到适合我们当下产品的:比如:我们可以在后端进行数据处理之后,传递到前端:也可以在前端进行数据处理:这里我们要说的就是前端的JS处理方法,后端的php处理方法 [JS方法] // 进行屏蔽的文字 var str = '小丽.小明和小红是校长的学生:在这个小家庭里面,校长就是我们

  • Java正则表达式提取字符的方法实例

    正好遇到一个需求需要将字符串中特定的字符全部提取出来,这个如果是按常规的字符串处理的话非常的繁琐.于是想到用正则表达式来完成.项目需求是这样的:需要提取车牌号中最后一个数字,比如说:苏A7865提取5,苏A876X提取6 实现方法: import java.util.regex.Matcher; import java.util.regex.Pattern; public class Test { public static void main(String[] args) { String s

  • PHP函数实现从一个文本字符串中提取关键字的方法

    本文实例讲述了PHP函数实现从一个文本字符串中提取关键字的方法.分享给大家供大家参考.具体分析如下: 这是一个函数定位接收一个字符串作为参数(连同其他配置可选参数),并且定位该字符串中的所有关键字(出现最多的词),返回一个数组或一个字符串由逗号分隔的关键字.功能正常工作,但我正在改进,因此,感兴趣的朋友可以提出改进意见. /** * Finds all of the keywords (words that appear most) on param $str * and return them

  • WinForm使用正则表达式提取内容的方法示例

    本文实例讲述了WinForm使用正则表达式提取内容的方法.分享给大家供大家参考,具体如下: 用VS新建WinForm程序,窗体上是三个文本框和一个按钮. 可以自己构造正则表达式,自己修改匹配内容 正则表达是要提取的部分为hewenqitext 代码如下: using System; using System.Text.RegularExpressions; using System.Windows.Forms; namespace HoverTreeBatch.HoverTree { publi

  • Java利用正则表达式提取数据的方法

    什么是正则表达式 正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它 用以描述在查找文字主体时待匹配的一个或多个字符串.正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配. Java利用正则表达式提取数据 Java正则表达式的用途很广,之前要用到将一大 3M 的 txt 文本切分成多个小文本,用 C# 写的话很简洁,代码也就二十几行,今天用 Java 写了一下,果然,Java 很罗嗦. 切分文件的代码

  • java正则表达式提取数字的方法实例

    复制代码 代码如下: @Test    public void test33() {        String phoneString = "哈哈,13888889999";        // 提取数字        // 1        Pattern pattern = Pattern.compile("[^0-9]");        Matcher matcher = pattern.matcher(phoneString);        Strin

  • Java使用正则表达式提取XML节点内容的方法示例

    本文实例讲述了Java使用正则表达式提取XML节点内容的方法.分享给大家供大家参考,具体如下: 现在有类似<doc>abc</doc><title>3232</title> <doc>只要内容</doc>这么一个串,需要提取abc,3232,只要内容的节点内容 public static List getContext(String html) { List resultList = new ArrayList(); Pattern

  • python使用正则表达式提取网页URL的方法

    本文实例讲述了python使用正则表达式提取网页URL的方法.分享给大家供大家参考.具体实现方法如下: import re import urllib url="http://www.jb51.net" s=urllib.urlopen(url).read() ss=s.replace(" ","") urls=re.findall(r"<a.*?href=.*?<\/a>",ss,re.I) for i i

  • Java编程实现提取文章中关键字的方法

    本文实例讲述了Java编程实现提取文章中关键字的方法.分享给大家供大家参考,具体如下: 实现代码: /** * 相关的jar包 * lucene-core-3.6.2.jar,lucene-memory-3.6.2.jar, * lucene-highlighter-3.6.2.jar,lucene-analyzers-3.6.2.jar * IKAnalyzer2012.jar * * 截取一片文章中频繁出现的关键字,并给予分组排序(倒叙),以数组格式返回n个关键字 * * 并该类内部含有一个

随机推荐