java如何能截取正则中的字符串,请看内容

比方说我有字符串数组分别是test123wqyeaasdasd,asdtesxxxt123qwdawqe,ajsdtsa123asda,asdateshwt12312aq... 比方说我有字符串数组分别是test123wqyeaasdasd,asdtesxxxt123qwdawqe,ajsdtsa123asda,asdateshwt12312aqwe

正则是te*t123[截取]a,
如何能将第一个的wqye,第二个的qwd,第三个没有匹配不截取,第四个12
这样截取下来啊
展开
 我来答
fuhaiwei
推荐于2016-11-03 · TA获得超过3409个赞
知道大有可为答主
回答量:974
采纳率:75%
帮助的人:1385万
展开全部
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class MatcherDemo {
    public static void main(String[] args) {
        String[] strings = new String[] {
                "test123wqyeaasdasd",
                "asdtesxxxt123qwdawqe",
                "ajsdtsa123asda",
                "asdateshwt12312aqwe" };
        Pattern pattern = Pattern.compile("te.*?t123(.*?)a");
        for (String string : strings) {
            Matcher matcher = pattern.matcher(string);
            if (matcher.find()) {
                System.out.println(string + "    匹配成功    " + matcher.group(1));
            } else {
                System.out.println(string + "    匹配失败");
            }
        }
    }
}

输出:

test123wqyeaasdasd    匹配成功    wqye
asdtesxxxt123qwdawqe    匹配成功    qwd
ajsdtsa123asda    匹配失败
asdateshwt12312aqwe    匹配成功    12
weaselpp
2013-05-21 · TA获得超过612个赞
知道小有建树答主
回答量:381
采纳率:33%
帮助的人:331万
展开全部
te.*?123(.*?)a
group(1)里面的就是你要取的字符
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式