java 正则 截取字符串

例如现在我有一串字符串Stringstr="act.autoTransactionTaskCompleteCSBE.001[异常服务系统名称:TSS.异常服务名称:ord... 例如现在我有一串字符串
String str ="act.autoTransactionTaskCompleteCSBE.001[异常服务系统名称:TSS.异常服务名称:orderBuy.返>回类型:E.服务异常码:1314.异常消息:首次购买或全额赎回后再次购买都需要满足首次投资金额2000000.00.服务方向:A]";

需要截取 首次购买或全额赎回后再次购买都需要满足首次投资金额2000000.00 这段字符串 怎么用正则表达式来截取呢?

这是我写的?匹配不上?找大神求解啊?

运行matcher.find() 也为true ,但是匹配打出的字符串不对啊,求高手解答!谢谢
展开
 我来答
紫薇参星
科技发烧友

2014-09-17 · 有一些普通的科技小锦囊
知道大有可为答主
回答量:5983
采纳率:92%
帮助的人:3595万
展开全部

Java正则表达式:(?<=异常消息:).*?(?=服务方向:)

Java正则匹配的例子如下:

import java.util.regex.Matcher;

import java.util.regex.Pattern;

public class I {

 public static void main(String[] args) {

String str="act.autoTransactionTaskCompleteCSBE.001[异常服务系统名称:TSS.异常服务名称:orderBuy.返>回类型:E.服务异常码:1314.异常消息:首次购买或全额赎回后再次购买都需要满足首次投资金额2000000.00.服务方向:A]";

  String regex="(?<=异常消息:).*?(?=服务方向:)";

  Pattern p=Pattern.compile(regex);

  Matcher m=p.matcher(str);

  while(m.find()){

   System.out.println(m.group());

  }

 }

}

运行结果:

首次购买或全额赎回后再次购买都需要满足首次投资金额2000000.00.

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式