正则表达式获取xml节点内容,并且替换

本文详细介绍了如何使用正则表达式在XML字符串中查找并替换特定元素的方法,包括如何使用Java的Pattern和Matcher类,以及如何处理查找结果。此外,文章还讨论了在XML字符串中查找不属于特定字符类的字符的技术,例如查找除了数字以外的所有字符。通过实例代码演示了如何实现这些功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

String xml = "XXXXXX<card>12345</card><card>2345</card>XXXXX";

String regex = "<card>([^</card>]*)";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(xml);

if(matcher.find()) { // while 处理全部的
String card =matcher.group(1);
xml.replaceAll(regex,"<card>"+card);



1.有时需要查找不属于某个能简单定义的字符类的字符。比如想查找除了数字以外,其它任意字符都行的情况,这时需要用到反义:
表3.常用的反义代码
代码/语法 说明
\W 匹配任意不是字母,数字,下划线,汉字的字符
\S 匹配任意不是空白符的字符
\D 匹配任意非数字的字符
\B 匹配不是单词开头或结束的位置
[^x] 匹配除了x以外的任意字符
[^aeiou] 匹配除了aeiou这几个字母以外的任意字符
例子:\S+匹配不包含空白符的字符串。
<a[^>]+>匹配用尖括号括起来的以a开头的字符串。


表2.常用的限定符
代码/语法 说明
* 重复零次或更多次
+ 重复一次或更多次
? 重复零次或一次
{n} 重复n次
{n,} 重复n次或更多次
{n,m} 重复n到m次


/^[A-Za-z0-9]*$/.test(str)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值