java - 非贪婪匹配不起作用

标签 java regex

我有一个这样的字符串

<tag1>
    <tag1>
        any text
    </tag1>
    text
</tag1>

我想找一个<tag1> ,包含该字符串中最短的文本。

我使用了以下正则表达式 <tag1>.*?</tag1> ,而不是 <tag1>any text</tag1>我得到了<tag1> <tag1>any text</tag1> 。这是example

为什么它不起作用以及我做错了什么?

最佳答案

您可以使用这个简单的代码来解决您的特定问题:

<tag1>[^<]*</tag1>

关于java - 非贪婪匹配不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21114247/

相关文章:

java - Tomcat 没有在 Eclipse 中启动

regex - htaccess 重写而不重定向

javascript - 仅当分隔符未包含在引号中时拆分字符串

Java 正则表达式

python - 在正则表达式中转义字符

java - 对象与条件,wait() 与 await()

java - Spring 注入(inject)不适用于构造函数参数

java - 使用不带循环和乘法的递归调用来查找值

java - 如何将依赖项注入(inject) Jersey 资源?

python - 如何用大写字母替换字符串中的小写字母并找出没有替换