使用Java将单引号(')附加到特殊字符串

问题描述 投票:0回答:1

我想为仅包含特殊字符的字符串附加单引号。这就是我想要实现的:-

String sp = ''{+#)''&$;

结果应为:-

'''' {+#)''''&$

这意味着对于每个单引号,我们也需要在该特定索引处附加一个单引号。

下面是我尝试过的代码:-

public static String appendSingleQuote(String randomStr) {
        if (randomStr.contains("'")) {
            long count = randomStr.chars().filter(ch -> ch == '\'').count();
            for(int i=0; i<count; i++) {
                int index = randomStr.indexOf("'");
                randomStr = addChar(randomStr, '\'', index);
            }
            System.out.println(randomStr);
        }
        return randomStr;
    }

private static String addChar(String randomStr, char ch, int index) {
        return randomStr.substring(0, index) + ch + randomStr.substring(index);
    }

但是这给出了这样的结果:-

''''''{+#)''&$

对此有何建议?字符串将始终具有偶数个单引号。

java special-characters single-quotes
1个回答
0
投票

您是要使用replace

String str = "''{+#)''&$";
str = str.replace("'", "''");

输出

''''{+#)''''&$
© www.soinside.com 2019 - 2024. All rights reserved.