正则表达式自动生成工具(支持语言:JS、PHP、Golang、Java、Ruby、Python、C#)
复制

正则表达式自动生成器

本页面免费为大家提供正则表达式在线代码生成工具,生成js正则表达式代码,生成java正则表达式代码,生成C#正则表达式代码,生成Go正则表达式代码,生成php正则表达式代码,生成ruby正则表达式代码,生成python正则表达式代码。

正则表达式的作用及其使用

正则表达式,又称规则表达式,常被用来检索、替换那些符合某个模式(规则)的文本。给定一个正则表达式和另一个字符串,我们可以达到如下的目的:

1.给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”):

2. 可以通过正则表达式,从字符串中获取我们想要的特定部分。

下面分别举例说明正则表达式如何达到这两个目的:

1.语法判断:输入一个QQ号,匹配其是否符合规则。

QQ号是从10000开始的,所以对其进行匹配可以用"[1-9][0-9]{4,}",其中,"[]"代表区间,[1-9]代表匹配区间1-9之间的单个字符,[0-9]代表匹配区间1-9之间的单个字符,{4,}表示匹配前一个格式(这里为[0-9])4次及4次以上。其java实现如下:

public static void main(String[] args) {
        String s = "1978511949";//任意一个QQ号
        Pattern p = Pattern.compile("[1-9][0-9]{4,}");
        Matcher mc = p.matcher(s);
        System.out.print("匹配结果:"+mc.find());//如果匹配成功,mc.find()返回true
    }

运行结果

匹配结果:true

2.获取一个字符串中的指定部分:

例如,获取字符串"https://www.xxx.com/md?articleId=106198769"中的数字部分"106198769”可以用"[0-9]+",其中,[0-9]上面已经讲过,代表匹配区间0-9之间的单个字符,"+“表示匹配前一个格式(这里为区间[0-9]之间的一个字符)0到n次,类似地,”*"表示匹配1到n次。

java中的实现为:

public static void main(String[] args) {
        String s = "https://www.xxx.com/md?articleId=106198769";
        Pattern p = Pattern.compile("[0-9]+");
        Matcher mc = p.matcher(s);
        if(mc.find())
            System.out.print(mc.group());
    }

运行结果如下:

106198769

以上就是正则表达式的作用及其使用。要实现上述功能,最核心的部分就是构造正则表达式,这就需要掌握正则表达式的语法,语法内容很多,这里就不细致展开了。