Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java正则表达式-更正模式_Java_Regex - Fatal编程技术网

Java正则表达式-更正模式

Java正则表达式-更正模式,java,regex,Java,Regex,模式-+ 输入字符串-“测试一些白痴文本白痴文本继续…” 现在我收到的结果是“一些白痴文本”。是否有任何方法可以修改模式,使其产生如下结果: "<tag>some <b>idiot</b> text</tag>" "<b>idiot</b>" “一些白痴文本” “白痴” 以下是方法: Pattern p = Pattern.compile("<(\\w+)>.+</\\1>"); String in

模式-
+

输入字符串-
“测试一些白痴文本白痴文本继续…”

现在我收到的结果是
“一些白痴文本”
。是否有任何方法可以修改模式,使其产生如下结果:

"<tag>some <b>idiot</b> text</tag>"
"<b>idiot</b>"
“一些白痴文本”
“白痴”
以下是方法:

Pattern p = Pattern.compile("<(\\w+)>.+</\\1>");
String input = "Testing <tag>some <b>idiot</b> text</tag>idiot text continue..";
Matcher m = p.matcher(input);

for (int i = 0; m.find(i); i = m.start() + 1)
    System.out.println(m.group());
Pattern p=Pattern.compile(“.+”);
String input=“测试一些白痴文本白痴文本继续…”;
匹配器m=p.Matcher(输入);
for(int i=0;m.find(i);i=m.start()+1)
System.out.println(m.group());
输出:

<tag>some <b>idiot</b> text</tag>
<b>idiot</b>
一些白痴文本
蠢人

显示一些输入和您想要匹配的内容请使用解析器。可能,是的——但是如果标记可以任意深度嵌套,那么最好不要将该部分实现为正则表达式,而是将其作为结果的递归函数。或者使用HTML解析器。有些人的投票速度有点快——请随意花时间编辑,看看这个问题是不是漏掉了,而不是根本不可靠的问题。这个问题有什么问题吗?