如何使用正则表达式从字符串中检索值?

时间:2016-05-06 12:01:35

标签: java regex

我有一个这样的字符串:

"text1 <text2> text3"

我只想抓取<>中的文字。所以我需要text2。我该怎么办?

2 个答案:

答案 0 :(得分:1)

你可以这样做:

String value = "text1 <text2> text3 <text4>";
Pattern pattern = Pattern.compile("<([^>]*)>");
Matcher matcher = pattern.matcher(value);
while (matcher.find()) {
    System.out.println(matcher.group(1));
}

<强>输出:

text2
text4

响应更新:

假设您知道您只有一个要提取的值,Bohemian建议采用更简单的方法,他建议继续下一步:

String value = "text1 <text2> text3";
String target = value.replaceAll(".*<(.*)>.*", "$1");
System.out.println(target);

<强>输出:

text2

答案 1 :(得分:0)

我建议你使用“”作为分隔符来拆分这个字符串 - 你将得到3个元素数组,第二个就是你要找的颜色