我已经尝试遍历字符串并手动替换它们,但计数是关闭的。我也尝试过使用列表、数组、stringbuilder等,但我无法使其工作:
char[] stringAsCharArray = inputString.toCharArray();
ArrayList<Character> charArraylist = new ArrayList<Character>();
for(char character: stringAsCharArray) {
charArraylist.add(character);
}
int counter = startPosition;
while(counter < endPosition) {
char temp = charArraylist.get(counter);
String tempString = Character.toString(temp);
if(Character.isDigit(temp)){
char[] tempChars = digits.getDigitString(Integer.parseInt(tempString)).toCharArray(); //convert to number
charArraylist.remove(counter);
int addCounter = counter;
for(char character: tempChars) {
charArraylist.add(addCounter, character);
addCounter++;
}
counter += tempChars.length;
endPosition += tempChars.length;
}
counter++;
}
我觉得必须有一种简单的方法来用子字符串替换字符串中的单个字符,而不必进行所有这些迭代。我说错了吗?
String[][] arr = {{"1", "one"},
{"5", "five"}};
String str = "String5";
for(String[] a: arr) {
str = str.replace(a[0], a[1]);
}
System.out.println(str);
这将帮助您用不同的文本替换多个单词。
或者,您可以使用链式替换来执行此操作,例如:
str.replace(1, "One").replace(5, "five");
检查一下这个更好的方法:Java在一个字符串中同时替换多个不同的子字符串(或者以最有效的方式)
问题内容: 我正在尝试替换字符串中特定索引处的字符。 我正在做的是: 这给出了一个错误。有什么方法可以做到这一点? 问题答案: 字符串在Java中是不可变的。你不能更改它们。 你需要创建一个新字符串并替换字符。 或者,你可以使用StringBuilder:
本文向大家介绍替换Java字符串中的子字符串,包括了替换Java字符串中的子字符串的使用技巧和注意事项,需要的朋友参考一下 假设以下是我们的字符串。 我们想将子字符串“ Dead”替换为“ Alive”。为此,让我们使用以下逻辑。在这里,我们使用了while循环,并在其中找到了要替换的子字符串的索引。这样,我们一个接一个地替换了整个子字符串。 以下是替换子字符串的完整示例。 示例 输出结果
说,我有一个字符串: 在这个字符串中,“内容”的位置是已知的。 现在,我想把最里面的div变成span标签。所以我想做的是: 在Java中有什么可以做到这一点吗?或者只是从指定的索引中获取子字符串的上一个和下一个出现的索引? 编辑:忘了指定div有未知的标签(可能有类和东西)和中间可能有东西(像例子中的标签)。
问题内容: 表: 值: 我想之前替换字符串用。 结果: 如何使用子字符串和基于字符串中的字符进行替换? 问题答案: 您甚至不需要使用或,您可以使用以下命令: 您可以使用以下方法进行测试:
问题内容: 我曾经在JavaScript中这样做: Swift没有此功能,如何做类似的事情? 问题答案: 编辑/更新: Xcode 11•Swift 5.1或更高版本 用法: 不区分大小写的样本 正则表达式样本