我想在字符串中的每个字母之后插入一个%字符,但是要使用StringBuilder使其更快。

例如,

如果字符串是“ AA”

then it would be '%A%A%'


如果是“ XYZ”

then it would be '%X%Y%Z%'

最佳答案

String foo = "VWXYZ";
foo = "%" + foo.replaceAll("(.)","$1%");
System.out.println(foo);


输出:


  %V%W%X%Y%Z%


您不需要StringBuilder。编译器将使用regex来为您处理这种简单的连接。

编辑以回应以下评论:

replaceAll()使用Regular Expression (regex)

正则表达式(.)说“匹配任何字符,并给我一个引用”。.是任何字符的通配符,括号内创建了反向引用。第二个参数中的$1表示“使用匹配中的反向引用#1”。

replaceAll()会在整个字符串上始终运行此表达式,并用一个百分号替换每个字符,并生成一个新的String,然后将其返回给您。

关于java - 在字符串中的每个字母之前和之后插入一个字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9356992/

10-09 15:20
查看更多