Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/321.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.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_String_Replace_Append - Fatal编程技术网

如何在Java中搜索字符串并附加到每个事件

如何在Java中搜索字符串并附加到每个事件,java,regex,string,replace,append,Java,Regex,String,Replace,Append,目前我正在做一个项目,我正在尝试看看哪种字符串方法最适合使用,或者如何实现这一点。我正在尝试为这个特定字符串的每次出现预先添加一个字符串。例如,我正在提取HTML,对于每个/img/image1.png,我发现我想在其中附加一个url 但是,有些图像已经是这样了,例如www.anylink.com/img/image2.png,它们不需要追加,而是在我提取的字符串中。我查看了replaceAll()方法,但不确定这是否允许在替换中追加,也不确定是否需要正则表达式来搜索只存在/img/的实例(没有

目前我正在做一个项目,我正在尝试看看哪种字符串方法最适合使用,或者如何实现这一点。我正在尝试为这个特定字符串的每次出现预先添加一个字符串。例如,我正在提取HTML,对于每个
/img/image1.png
,我发现我想在其中附加一个url

但是,有些图像已经是这样了,例如
www.anylink.com/img/image2.png
,它们不需要追加,而是在我提取的字符串中。我查看了
replaceAll()
方法,但不确定这是否允许在替换中追加,也不确定是否需要正则表达式来搜索只存在
/img/
的实例(没有url),而不是完整的url,因为我只想追加到本地托管的图像。我正在寻找一些建议,因为我不确定在研究之后如何开始这段代码


谢谢。

我认为字符串中的replaceAll()方法足以满足您的需要

您只需要编写正确的正则表达式

如果你写一些例子,我可以推荐正则表达式

例如:

System.out.println("<div><img src=\"/test/this.png\" /></div>".replaceAll("src=\"/(.*)\"", "src=\"www.google.com$1\""));
System.out.println(“.replaceAll”(“src=\”/(.*)\”,“src=\”www.google.com$1\”);

你的意思是“预结束”吗?因为在
/img/image1.png
/img/image1.pngwww.example.com
)之后添加url没有多大意义。如果图像以html格式显示为
src=“/img/image1.png”
,则可以替换为
“/img/
@Henri Viik我是说prepend,对此我很抱歉。忘了在前面加上。我不能简单地这样做,因为有些图像已经有url/img/image1.png,而有些没有。这将错误地影响那些已经有一个url为urlurl/img/imag1.png的人,不是吗?@Pshemo由于程序的当前结构,我不想使用jsoup,因为我已经用不同的方法提取了url,并且也提取了url,我只需要预先编写。谢谢你的建议问题是字符串有很多不同的HTML,所以应该仍然正确吗?因为我将解析该字符串中的许多内容。此外,我正在尝试学习regexatm,使其只遍历/img/image1.png(因此之前基本上没有url)。这会使用正则表达式吗?另外,今晚我将写一些例子。我应该在这里回复还是发一个新帖子?非常感谢您抽出时间。好的。我的解决方案适用于小型html。如果你需要解析一个大页面,你应该使用html解析器。replaceAll的唯一问题是你需要在一个字符串中加载所有的html。除非您能够读取页面的块。我已经在一个字符串中包含了所有HTML:)。我是否仍然需要正则表达式将图像与/img/image1.png格式完全匹配(意味着后面没有url)?谢谢你试过我写的正则表达式吗?看起来您的用例并没有那么难,所以regex就足够了