JAVA根据正则提取文本内容

Posted HaSaKing_721

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA根据正则提取文本内容相关的知识,希望对你有一定的参考价值。

前言

最近被同事问到如何按条件提取文本里面的内容,在此记录一下

场景

举个栗子 假设文本有如下内容:

iphone version:1.23.01 xiaomi version:1.32.1 huawei version:1.3.41 yijia version:1.23.15

假设我们要取 xiaomi version 后面的版本号

可以使用 java.util.regex.Pattern 这个包的 compile 方法

具体实现

废话不多说直接上代码

public static void main(String[] args) 
        String ss = "iphone version:1.23.01  xiaomi version:1.32.1   huawei version:1.3.41  yijia version:1.23.15";
        Pattern pattern = Pattern.compile("(xiaomi version:(\\\\[1-9]\\\\d|[1-9])(\\\\.([1-9]\\\\d|\\\\d))2)");
        Matcher m = pattern.matcher(ss);
        while(m.find()) 
            System.out.println(m.group(1));
        
    

运行

这里具体说下 Pattern.compile 方法

下面说图来说明下规则

完结撒花!~

以上是关于JAVA根据正则提取文本内容的主要内容,如果未能解决你的问题,请参考以下文章

PHP正则表达式取文本中间内容。

PHP正则提取中文部分内容,怎么实现呀?

php正则问题如何取文本中间内容?

使用正则表达式删除 html 实体并提取文本内容

Java正则表达式提取标签之间的文本

用于在 HTML 标记中提取特定文本内容的正则表达式