4

我想用java中的“”替换方括号中的文本:

例如我有句子

"Hello, [1] this is an example [2], can you help [3] me?"

它应该变成:

“你好,这是一个例子,你能帮帮我吗?”

4

3 回答 3

14
String newStr = str.replaceAll("\\[\\d+\\] ", "");

这样做是用空字符串替换所有出现的正则表达式。

正则表达式是这样的:

\\[  // an open square bracket
\\d+ // one or more digits
\\]  // a closing square bracket
     // + a space character

这是第二个版本(不是 OP 要求的,而是更好地处理空白):

String newStr = str.replaceAll(" *\\[\\d+\\] *", " ");

这样做是用一个空格字符替换所有出现的正则表达式。

正则表达式是这样的:

 *   // zero or more spaces
\\[  // an open square bracket
\\d+ // one or more digits
\\]  // a closing square bracket
 *   // zero or more spaces
于 2012-06-09T14:52:19.107 回答
4

这应该有效:

.replaceAll("\\[.*?\\]", "").replaceAll(" +", " ");
于 2012-06-09T14:52:31.530 回答
1

请用这个,

String str = "[How are you]";
str = str.replaceAll("\\[", "").replaceAll("\\]","");
于 2014-12-04T11:07:51.783 回答