Java字符串替换所有[url]

时间:2017-09-09 12:34:05

标签: java android

我有一个文本字符串,其中包含由[url]

包围的各种网址

例如:

  

[网址] http://www.example.com[/url]

我希望它读起来像这样:

  

http://www.example.com

我试过了:

String test = body3.replaceAll("[url]", "");

但我最后还是用方括号[]

3 个答案:

答案 0 :(得分:1)

您可以尝试使用正则表达式替换:

String input = "Example text [url]http://www.example.com[/url] Example text";
input = input.replaceAll("\\[url\\](.*?)\\[/url\\]", "$1");

在这里演示:

Rextester

答案 1 :(得分:0)

试试这个。您似乎希望将[url],[/ url]替换为空格。

String a = "Example text [url]http://www.example.com[/url] Example text";
String[] b = {"[url]","[/url]"};
String[] c = {"",""};
StringUtils.replaceEach(a,b,c);

结果将是:示例文本http://www.example.com示例文本。

请记住,如果你想用相应的空字符串或任何其他字符串替换字符串数,你可以用上面的方法来做。

答案 2 :(得分:0)

在正则表达式中,方括号用于指定要匹配的项目范围,因此[url]将匹配字符u,r和l。

要匹配实际的方括号,您需要通过在其前面添加反斜杠

来对其进行转义

\ [

但是单个反斜杠也需要在java中进行转义,因此你需要在方括号前加上两个反斜杠。

因此,要使用replaceAll删除url块,可以使用

for (int i = 0; name[i] != '\0'; i++){
    name[i] = toupper(name[i]);
}