java正则表达式获取指定两个字符串之间内容
xml解析利用正则表达式获取指定两个字符串之间内容

- package com.starit.analyse.util;
- import java.text.SimpleDateFormat;
- import java.util.ArrayList;
- import java.util.List;
- import java.util.regex.Matcher;
- import java.util.regex.Pattern;
- public class DealStrSub {
- /**
- * 正则表达式匹配两个指定字符串中间的内容
- * @param soap
- * @return
- */
- public static List<String> getSubUtil(String soap,String rgex){
- List<String> list = new ArrayList<String>();
- Pattern pattern = Pattern.compile(rgex);// 匹配的模式
- Matcher m = pattern.matcher(soap);
- while (m.find()) {
- int i = 1;
- list.add(m.group(i));
- i++;
- }
- return list;
- }
- /**
- * 返回单个字符串,若匹配到多个的话就返回第一个,方法与getSubUtil一样
- * @param soap
- * @param rgex
- * @return
- */
- public static String getSubUtilSimple(String soap,String rgex){
- Pattern pattern = Pattern.compile(rgex);// 匹配的模式
- Matcher m = pattern.matcher(soap);
- while(m.find()){
- return m.group(1);
- }
- return "";
- }
- /**
- * 测试
- * @param args
- */
- public static void main(String[] args) {
- String str = "abc3443abcfgjhgabcgfjabc";
- String rgex = "abc(.*?)abc";
- System.out.println(getSubUtil(str,rgex));
- System.out.println(getSubUtilSimple(str, rgex));
- }
- }
若给出的正则表达式rgex匹配不到的话,就会返回空,这两个方法运用得当,解析复杂的xml就迎刃而解了。
运行结果如下:
原文地址http://www.bieryun.com/614.html
相关文章:

【linux】Matchbox(二):基本概念
X server X server是Linux系统里面图形接口服务器的简称。Windows系统的界面是这个系统不可分割的一部分,各种窗口操作界面显示都是由系统核心直接管理的,而Linux的图形界面并不是系统的必要组成部分,它可以在无界面的条件下运行。当需要Lin…

Android 控件之ImageSwitcher图片切换器
ImageSwitcher是Android中控制图片展示效果的一个控件,如:幻灯片效果...,颇有感觉啊。做相册一绝 源码下载 一、重要方法 setImageURI(Uri uri):设置图片地址 setImageResource(int resid):设置图片资源库 setImageDra…

【Qt】Qt5.x移植后的环境配置(imx6)
1、环境配置脚本如下 #!/bin/shexport QTDIR=/usr/lib/qt5 export QT_QPA_PLATFORM_PLUGIN_PATH=$QTDIR/plugins export QT_QPA_PLATFORM=eglfs:fb=/dev/fb0 export QT_QPA_GENERIC_PLUGINS=evdevtouch:/dev/input/event1 export QT_QPAFONTDIR=/usr/lib/fonts export QML2_IM…

程序员如何避免“滴滴式裁员”悲剧?
作者 | 徐麟转载自数据森麟(ID:shujusenlin)滴滴于2月15日正式发表裁员公告,想必很多互联网人的朋友圈都已经被这条消息刷屏了,其中最常见的莫过于下面这张图了:此图一出,广大互联网吃瓜群众不禁后背发凉&a…

windows服务搭建及命令总结
1、图解FTP服务器搭建(Windows Server 2008) https://wenku.baidu.com/view/803bdc1759eef8c75fbfb361.html?fromsearch https://www.cnblogs.com/john2017/p/6269671.html 2、WindowsServer2008下搭建ApachePHPMySQL https://wenku.baidu.com/view/2e82b99ea1116c175f0e7cd18…

Linux下的CST和UTC时间的区别
在linux中,用date查看时间的时候显示:2008年 12月 17日 星期三 09:04:14 CSTCST China Standard Time UTC8:00 中国沿海时间(北京时间)世界协调时间(Universal Time Coordinated,UTC)GPS 系统中有两种时间区分,一为UTC,另一为LT&a…

Python之父重回决策层,未来如何发展?
作者 | 豌豆花下猫来源 | Python猫(ID:python_cat)春节假期结束了,大家陆续地重回到原来的生活轨道上。假期是一个很好的休息与调节的机会,同时,春节还有辞旧迎新的本意,它是新的轮回的开端。在…

【Android】adb命令总结
1、adb version 显示ADB工具版本 2、adb devices 查询设备,显示设备序列号 3、adb sideload < file_location> 通过USB进行ROM刷机 4、adb install < apk文件路径> 安装APK 5、adb uninstall <软件名> 卸载软件 6、adb push <本地路径>…

MySQL中char与varchar的区别
字符与字节的区别 一个字符由于所使用的字符集的不同,会并存储在一个或多个字节中,所以一个字符占用多少个字节取决于所使用的字符集注意:char与varchar后面接的数据大小为存储的字符数,而不是字节数(其实是5.0版本以上…

怎样在Red Hat Enterprise Linux 5.4版本上安装GCC?
注意:如果打算使用GUI的方式安装,需要导入GPG-Key(否则在使用GUI时会出现public key for *.rpm is not installed) 请切换到安装光盘目录下: cd /media 可以看到 RHEL* 的目录,然后切换到这个目录中: cd RHEL* 你需要运…

【C++】mingw32-make+cmake:error: ‘nullptr‘ was not declared in this scope解决方法
###问题 使用cmake成功(Configuring done Generating done)后,在cmd终端中执行 mingw32-make报错: error: nullptr was not declared in this scope###原因 nullptr是在c11的新内容。编译时,没有添加对C11的支持。 解…

喜得爱女,吴恩达深情撰文:欢迎你来到新世界!
整理 | 琥珀出品 | AI科技大本营(ID:rgznai100)一个月前,吴恩达冷不丁在Twitter放出了重磅消息: “我们的最新‘成果’ Baby Ng 即将诞生!2019 年 2 月见面!”果然,昨日吴恩达公开了首个小公主降…

FastJson 简单使用
对象、List转JsonUser user new User(); /*JSON 序列化,默认序列化出的JSON字符串中键值对是使用双引号,如果需要单引号的JSON字符串, [eg:String jsonString JSON.toJSONString(map, SerializerFeature.UseSingleQuotes);] *fastjson序…

【数据安全案例】交警计算机系统再遭***,交通违法记录随意删除
根据新浪报道,据新华社10月14日电 利用当网管的机会,破解密码,非法进入交警计算机系统为他人删除车辆交通违法记录牟利。辽宁省鞍山市铁西区检察院透露,当地某公司员工程尚军因涉嫌破坏计算机信息系统罪,已于10月初被依…

开源,还能走多远?
【编者按】在各大厂纷纷拥抱开源的当口,“开源代码面临可持续发展危机”的言论也甚嚣尘上。早期,技术爱好者们“用爱发电”,“他们知道在出问题前,没人会注意到他们,没人会重视他们”。但遗憾的是,很长一段…

使用axis开发web service服务端
一、axis环境搭建 1.安装环境 JDK、Tomcat或Resin、eclipse等. 2.到 http://www.apache.org/dyn/closer.cgi/ws/axis/1_4 下载Axis的jar包 3.将Axis的jar包放入WEB-INF/lib目录下 二、编写web service服务端 1.编写服务 package com.webservice;public class HelloWebservice {…

【Qt】qt打印文件名、函数名、行号
#include <QDebug> #define MyDebug qDebug()<<"[FILE:"<<__FILE__<<",LINE"<<__LINE__<<",FUNC"<<__FUNCTION__<<"]

【Qt】Qt项目常用代码总结
路径 获取当前路径 #include <QCoreApplication> QString appDirPath QCoreApplication::applicationDirPath(); 转换成对应系统路径 返回路径名,使分隔符转换为适合底层操作系统的分隔符。 windows下为“\”; linux下为“/” #include <QDir> a…

滴滴裁员补偿丰厚,员工称裁出幸福感?
整理 | 一一出品 | AI科技大本营(rgznai100)滴滴裁员的“靴子”正在逐步落地。据《财经》报道,滴滴近日已给出裁员的具体赔偿方案:补偿一般为 N1 个月,如果本周能确认,再额外给一个月补偿——这一个月补偿是…

shell编程基础
1. 程序的执行风格 程序编程风格:过去式:以指令为中心,数据服务于指令。对象式:以数据为中心,指令服务于数据。过程式编程有以下特点:1) 顺序执行:指程序在执行的过程中,…

【Qt】QImage使用总结
图像格式转换 由 RGB 格式转换成 BGR 格式 QImage::rgbSwapped() 返回一个QImage,其中所有像素的红色和蓝色组件的值被交换,有效地将RGB图像转换为BGR图像。 QImage image(fileName); QImage bgr = image.rgbSwapped();将彩色图转换成 灰度图 使用QImage::convertToForma…

访问量最高超7百万的Stack Overflow问题竟然是...
整理 | Jane出品 | AI科技大本营(公众号id:rgznai100)Stack Overflow,一个面向开发者的 IT 技术问答网站,很多程序员都会在上面提问,浏览问题,查找技术知识。在 Top Question 页面,我…

CentOS 6.9下配置安装KVM
注意:KVM一切安装和运行都是在root用户下完成的,并且只有root才能支持某些软件。 一、准备工作: 1、查看系统版本、内核版本 ##查看系统版本 # cat /etc/redhat-release CentOS release 6.4 (Final) ##查看内核版本 # uname -a Linux KVM 2.6…

感觉要大病一场了
呵呵,这两天很累,再加上天气的原因,整个人晕乎乎的,其实很累,可就是睡不着, 其实我不知道是身体的累,还是心累了,总之,整个人就是提不起做事的激情来一个人就这样浑浑噩噩…

【视频】使用VLC采集摄像头,以RTSP协议发送流到网络上
VLC官网 http://www.videolan.org/ VLC3.0.1搭建失败 本人使用VLC3.0.1,搭建失败,总报无法打开URL VLC2.1.5搭建成功 VLC2.1.5官网地址及下载地址 www.videolan.org/vlc/releases/2.1.5.html http://get.videolan.org/vlc/2.1.5/win32/vlc-2.1.5-win32.exe 搭建RTSP …

优质中文NLP资源集合,做项目一定用得到!
整理 | Jane出品 | AI科技大本营(公众号id:rgznai100)今天要给大家在推荐 Github 上一个优质的中文 NLP 工具和资源集合项目——funNLP,已经获得了 5.3k Stars,1k Forks。项目作者 杨洋,一枚水博&互联网…

小程序:js获取验证码时(倒计时模块)
代码例子截图最近在上手开发小程序,发现其实小程序要比vue真的要简单太多了,有一套自己的html(WXML),css(WXSS),虽然有些标签不能直接沿用html5的标签来开发,不过内置的标签还是很好记也不多。今天在做公司的项目时&am…

十大经典排序算法动画与解析,看我就够了
作者 | 程序员小吴转载自五分钟学算法(ID: CXYxiaowu)排序算法是《数据结构与算法》中最基本的算法之一。排序算法可以分为内部排序和外部排序。内部排序是数据记录在内存中进行排序。而外部排序是因排序的数据很大,一次不能容纳全部的排序记…

Crystal Reports 财务日记帐凭证套打设计
Crystal Reports 财务日记帐凭证套打设计 一、首先大家看下财务日记帐凭证的纸张格式: 下面我们来分析下有几点要素:1、每页显示5行记录,2、就是在合计处的中文金额大写了。其他页眉页脚在水晶报表中很容易设计。 二、报表设计:在…

oozie调度中的重试和手工rerun一个workflow
在oozie中有Bundle、Coordinator和Workflow三种类型的job,他们之间可以有以下包含关系。 Bundle > Coordinator > Workflow。 1. 重新运行一个Coordinator job,可以通过如下命令: oozie job -rerun 0000034-180116183039102-oozie-hado…