用Java正则表达式来获取一个字符串中<>里面的内容。

例:String s = "dsadsadas<peter>dsadasdas<lionel>\"www.163.com"\<kenny><>";
获取<>中的内容~
希望得到的结果:
<peter>
<lionel>
<kenny>
<>
希望会的朋友可以帮忙解决一下3Q

String s = "dsadsadas<peter>dsadasdas<lionel>\"www.163.com\"<kenny><>";
Pattern p = Pattern.compile("(<[^>]*>)");
Matcher m = p.matcher(s);
List<String> result=new ArrayList<String>();
while(m.find()){
result.add(m.group());
}
for(String s1:result){
System.out.println(s1);
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-09-30
一个表达的一次匹配无法实现你的需求,需要写个循环,按照如下表达式不断查找,直到不能再次匹配,每次匹配成功后,获取捕获组1的内容。
<(.*?)>

用Java正则表达式来获取一个字符串中<>里面的内容。
while(m.find()){ result.add(m.group());} for(String s1:result){ System.out.println(s1);}

请问怎么用java正则表达式提取以下文本中指定的内容
正则表达式是根据规则来匹配文本,你这里只给了一个文本示例,所以无法建立其比较普遍通用的规则。以下是示例代码,可供参考。代码中对每一个你要的数据进行了一个单独匹配,也可以通过一次匹配取出全部的数据。import java.util.regex.Matcher;import java.util.regex.Pattern;public class Test { publi...

...内容用JAVA正则表达式提取<br \/> 之间的字符串的如何写?
regex = Pattern.compile("<br \/>(.*?)<br \/>");Matcher regexMatcher = regex.matcher(subjectString);if (regexMatcher.find()) {ResultString = regexMatcher.group(1);} } catch (PatternSyntaxException ex) {\/\/ Syntax error in the regular expression}subjectString是你的字符串 ...

java怎么把字符串中的的汉字取出来
1.判断字符串是否全是汉字。String str1 = "java判断是否为汉字"String str2 = "全为汉字"String reg = "[\\\一-\\\龥]+"boolean result1 = str1.matches(reg)\/\/false boolean result2 = str2.matches(reg)\/\/true 2.提取字符串中的汉字。String str = "java怎么把asdasd字符串中的...

java 如何利用正则表达式只保留html里面的<p><\/p>标签里面的内容
正则表达式:<p.*?>(.*?)<\/p> group(1)为正文内容。输出时加上\\n就行了 import java.util.regex.*;public class Test{ public static void main(String[] args){ String str="<p style=\\"font-size:1.3em;font-weight:bold\\">No page with that title exists.<\/p> ";String regex=...

java如何使用正则表达式提取以下字符串的数字
String s = "<td>2747<\/td><td>50.4%<\/td><td>1384<\/td><td>1363<\/td><td>11-10 23:24<\/td>";Pattern p = Pattern.compile("(?:<td>)(.*?)(?:<\/td>)");Matcher m = p.matcher(s);while(m.find()) {System.out.println(m.group(1));} ...

求助java正则表达式将括号里的内容提取出来
1.就用LS的例子来改进吧,LS的例子用正则匹配的捕获型,也就是说除了捕获了\/patroninfo~S0*chx\/1069163\/modpinfo,还捕获了带单引号的 '\/patroninfo~S0*chx\/1069163\/modpinfo‘ (输出 System.out.println(mat.group(0) 就是);这样无论在效率还是安全性上都有欠缺。2 Pattern.compile("\\\\...

java 正则表达式提取<a><\/a>标签中值
String str = "<a href=\\",5094.1\\">weblogic日志编码大全<\/a>"; Pattern p = Pattern.compile("<a[^>]*>([^<]*)<\/a>"); Matcher m = p.matcher(str); while(m.find()) { System.out.println(m.group(1)); }特意帮你写了一段 若不能解决,请追问,我继...

java中使用正则表达式获取字符串数组中含有字符[ ]的字符串,将得到的内...
void main ( String[] args ){String input = "abc[1]dd[a-b]df[3.b]";String regex = "\\\\[[^\\\\[\\\\]]*\\\\]";Pattern pattern = Pattern.compile (regex);Matcher matcher = pattern.matcher (input);while (matcher.find ()){System.out.println (matcher.group ());}}} ...

java正则表达式截取字符串
import java.util.regex.Matcher;import java.util.regex.Pattern;public class Hello { public static void main(String[] args) { String re = "\\\\[([^\\\\]]+)\\\\]";String str = "[您好],abcdefg,[abc]"; Pattern p = Pattern.compile(re);Matcher m = p.matcher(str); ...

相似回答