Java 正则表达式获取两个字符中间的内容

利用 正则表达式 获取两个字符串中间的值

直接上代码吧,不是很难。

    public static void main(String[] args) {

        // 内容
        String value = "fileNameCode-->_AD2467524284sd234.json";

        // 匹配规则
        String reg = "_(.*?)\\.";
        Pattern pattern = Pattern.compile(reg);

        // 内容 与 匹配规则 的测试
        Matcher matcher = pattern.matcher(value);

        if( matcher.find() ){
            // 包含前后的两个字符
            System.out.println(matcher.group());
            // 不包含前后的两个字符
            System.out.println( matcher.group(1) );
        }else{
            System.out.println(" 没有匹配到内容....");
        }
    }

注意:这个 . 需要:\\. 这样。

() --> 标记 一个子表达式 开始 和 结束 的位置。

. --> 匹配除换行符 \n 之外的任何单字符。

* --> 匹配前面的子表达式零次或者多次。

? --> 匹配前端的子表达式零次或者一次。

原文地址:https://www.cnblogs.com/oukele/p/11110680.html

时间: 2024-10-13 15:38:22

Java 正则表达式获取两个字符中间的内容的相关文章

Python中使用正则表达式获取两个字符中间部分

问题背景:当我们爬取网页信息时,对于一些标签的提取是没有意义的,所以需要提取标签中间的信息. 解决办法:用到了re包下的函数 方法1:用到了research()方法和group()方法 方法2:用到了findall()方法 具体实现: import re # 匹配两个字符中间的所有字符 a = '<p>life is short, i use python<a/>i love it<p>' r = re.search('<p>(.*)<a/>(.

java正则表达式获取指定HTML标签的指定属性值

package com.mmq.regex; import java.util.ArrayList; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * @use 获取指定HTML标签的指定属性的值 * @FullName com.mmq.regex.MatchHtmlElementAttrValue.java </br> * @JDK 1.6.0 </b

正则表达式匹配两个特殊字符中间的内容

今天在使用正则表达式中,要匹配两个字符中间的内容,一时没有写出来,后来在网上找到了,记录一下. 匹配两个字符串A与B中间的字符串包含A与B: 表达式: A.*?B("."表示任意字符,"?"表示匹配0个或多个) 示例: Abaidu.comB 结果: Awww.apizl.comB 匹配两个字符串A与B中间的字符串包含A但是不包含B: 表达式: A.*?(?=B) 示例: Awww.apizl.comB 结果: Awww.apizl.com 匹配两个字符串A与B中间

java 正则表达式获取匹配和非获取匹配

1 package test1; 2 3 import java.util.regex.Matcher; 4 import java.util.regex.Pattern; 5 6 public class TestExp { 7 /** 8 * 9 * 在使用正则表达式的时候,我们经常会使用()把某个部分括起来,称为一个子模式. 子模式有Capturing和Non-Capturing两种情况. 10 * Capturing指获取匹配 : 11 * 是指系统会在幕后将所有的子模式匹配结果保存起来

java正则表达式中的POSIX 字符类和Unicode 块和类别的类介绍

假如现在有一个需求,要你用Java语言来匹配出一个文本里面的所有(英文半角)标点符号,你会怎么写呢?我想大多数人应该是把这些符号都罗列出来, 如: !"#$%&'()*+,-./:;<=>[email protected][\]^_`{|}~ 但[!"#$%&'()*+,-./:;<=>[email protected][\]^_`{|}~]这样写需要转义一下, 结果为: [-!"\#\$%&'()*+,./:;<=>

Java正则表达式匹配多行

默认情况下.*中的.只能匹配出\n以外的字符,如果遇到要匹配的字符串包含回车换行符(多行),则正则表达式遇到换行符后会停止,导致包含回车换行符的串不能正确匹配,解决的办法是: 1.使用Pattern和Matcher对象 设置Pattern模式为:Pattern.DOTALL 2.使用String.replaceAll() 正则表达式写法: String reg = "(?s)'.*'"; 下面是一个包含回车换行字符的正则表达式替换处理例子. static String teststr

Java 正则表达式功能及应用

正则表达式,就是用某种模式去匹配一类字符串的一个公式,正则表达式由一些普通字符和一些元字符(metacharacters)组成.普通字符包括大小写的字母和数字,而元字符则具有特殊的含义,不管是.Net平台还是Java平台,正则表达式表达的意思都是一样的,下面我们主要分析Java正则表达式中的功能和具体应用,希望文章对您有所帮助,仅供参考. 自从jdk1.4推出java.util.regex包,就为我们提供了很好的Java正则表达式应用平台,因为Java正则表达式是一个很庞杂的体系. \\ 反斜杠

java正则表达式总结

最近用到的正则表达式 由于最近在做一个android的新闻客户端,多次用到了正则表达式,因此总结下. 1.使用正则表达式获取Rss资源内的文章内容的图片url 因为在每条新闻浏览的listView里需要新闻内容里的图片,因此你需要抓取文章第一张照片url地址,豆瓣的照片格式是: <img src="http://theimg.aliapp.com/img.php?url=http://img6.douban.com/view/presto/large/public/218991.jpg&q

获取异常信息e.printStackTrace()的内容

获取异常信息e.printStackTrace()的内容 最近做项目的时候需要记录操作的日志,但是记录异常信息的是发现使用e.getMessage()根本无法满足需要,并且e.getMessage()有时获得的信息根本无法知道具体的错误信息,那么这个时候我们就要获得e.printStackTrace()的内容了 获得异常错误信息 package com.gavin.exception.demo; import java.io.PrintWriter; import java.io.StringW