zoukankan      html  css  js  c++  java
  • Java/C++的正则表达式的总结归纳

    Java的正则表达式的书写方式:
    private String reg="\d+@\w*\.\w{3}";//正则表达式
        //"\d"表示0-9的一个数字"+"表示前缀\d有1个或者多个
        //"\."表示正则表达式中的."\w"表示a-zA-Z0-9字符或者数字
        //"{3}"表示有三个前缀,相当于"+"的一种变式
        //而{n,}表示有n个前缀及以上
        //{n,m}表示有n-m个前缀(含边界)
        //例子:space.matches("456581464@qq.com");
    C++的正则表达式的书写方式:
    由于c++/c标准中都不支持直接使用正则表达式,但是可以通过一些函数间接的调用正则表达式
    下面就来介绍两种可以支持正则表达式的函数,sscanf与ssprintf
    函数原型:sscanf(char *src,char *fromate);与ssprintf(char*src,char*fromate);
    两者的参数样式大致相同
    sscanf与scanf的主要区别就在于:scanf是从键盘中获取资源,而sscanf是从src这个原字符串中获取资源
    sprintf与printf的主要区别在于:printf是将资源打印到屏幕上而sprintf则是将资源放入到src这个参数中
    如sprintf(src,"%d.%d.%d",2019,11,6);cout<<src;------2019.11.6
    又如sscanf("2019.11.6","%d.%d.%d",&year,&month,&day);就是他们的只要的用法-----接下来就来介绍关键的正则的用法
    如其他的用法,比如对某个网址的进行分割sscanf("www.baidu.com/cccss.html","%[^/]%s",host,others);
    char host[1024];
        int data=0;
        int val=0;
        cout<<scanf("%d:%d",&data,&val)<<endl;  //默认用空格对数据的输入进行划分
        //也可至指定数据时输入的格式如:%d:%d
        cout<<sscanf_s("www.baidu.com//html.com","%[^/]",host)<<endl;
        cout<<host<<endl;
    在某些方面确实和Java的很相似
    在文章的最后在配上一些c语言中关于字符查找与匹配的函数
    查找一个字符:strchr和strrchr
    不同:两者主要的区别就在于:
    strchr查找的是字符第一次出现的位置
    strrchr查找的是字符最后一次出现的位置
    相同:两者相同点就是:它们的返回值都是指向该位置的指针,都在c的string.h中,注意和c++的string做区分哦
     const char *s="a";
        const char * ptr="abca";
        if(strchr(ptr,s))
        {
          cout<<"exist"<<endl;
        }
    查找一个字符串:strstr strrstr
    不同:两者主要的区别就在于:
    strstr查找的是字符串第一次出现的位置
    strrstr查找的是字符串最后一次出现的位置
    相同:两者相同点就是:它们的返回值都是指向该位置的指针,都在c的string.h中,注意和c++的string做区分哦
    const char *s="abc";
        const char * ptr="abca";
        if(strstr(ptr,s))
        {
          cout<<"exist"<<endl;
        }
    Java的一些写法:
    Java:
    1、int indexOf(String str) :返回第一次出现的指定子字符串在此字符串中的索引。
    2、int indexOf(String str, int startIndex):从指定的索引处开始,返回第一次出现的指定子字符串在此字符串中的索引。
    3、int lastIndexOf(String str) :返回在此字符串中最右边出现的指定子字符串的索引。
    4、int lastIndexOf(String str, int startIndex) :从指定的索引处开始向后搜索,返回在此字符串中最后一次出现的指定子字符串的索
    
    
    
  • 相关阅读:
    初识echarts
    深浅拷贝的理解
    react基本语法及组件
    webpack使用
    网上面试资料整理
    封装原生promise函数
    vue路由懒加载及组件懒加载
    译文---C#堆VS栈(Part Four)
    译文---C#堆VS栈(Part Three)
    译文---C#堆VS栈(Part Two)
  • 原文地址:https://www.cnblogs.com/z2529827226/p/11631789.html
Copyright © 2011-2022 走看看