Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.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
Regex将获得<;a href>;来自java中的字符串_Java_Regex - Fatal编程技术网

Regex将获得<;a href>;来自java中的字符串

Regex将获得<;a href>;来自java中的字符串,java,regex,Java,Regex,如果我有 <img class="size-full wp-image-10225" alt="animals" src="abc.jpg"> blah blah blah&nbsp; <a href="http://en.wikipedia.org/wiki/Elephant">elephant is an animal</a>&nbsp;blah 废话废话 废话 我想要一个正则表达式来给我输出: blah blah blah <a

如果我有

<img class="size-full wp-image-10225" alt="animals" src="abc.jpg"> blah blah blah&nbsp;
<a href="http://en.wikipedia.org/wiki/Elephant">elephant is an animal</a>&nbsp;blah
废话废话
废话
我想要一个正则表达式来给我输出:

blah blah blah <a href="http://en.wikipedia.org/wiki/Elephant">elephant is an animal</a> blah
废话废话

没有
。我可以分别执行
str.replace(“,”)
,但是如何获取从
blah blah…
开始的字符串,直到
blah
(包括链接标记)

也许是这样的

^<[^>]*>\s*|&nbsp;
^]*>\s*|
Java转义:

^<[^>]*>\\s*|&nbsp;
^]*>\\s*|

^]*>\\s*
将匹配第一个
img
标记和以下任何空格。然后更换
。替换字符串为“


不过,您可能需要使用适当的HTML解析器,因为它不太可能损坏。

您必须分别删除
img
标记。你只需要a标签吗?这对RegExpr有效。如果您想在标记前后获取其他文本,这里有问题。为什么不轻易删除不需要的标签?我也需要标签前的文本。所以基本上我不能说StringUtils.removeHTMLTags(),因为这会删除所有标记,我需要html标记。所以基本上我想的是在ahref之前找到第一个“>”,然后从那里捕获文本,直到(包括)在标题中看到regex和HTML。但是我没有得到java转义部分。那么我应该这样做吗:str.replace(^]*>\s*|,“”)@user3298846使用Java中的转义版本: