我正在使用Java编程,我想要获取以下字符串:
我想把第二个 "string" 替换为 "this is a much larger string",经过一些 Java 魔法,输出将会是这样的:
我有文本开始的偏移量。在这种情况下,偏移量为40,被替换的文本是“string”。
我可以执行以下操作:
但是除了使用Java的substring函数,还有更好的方法吗?
编辑 -
文本“string”至少会在示例字符串中出现一次,但可能会在该文本中多次出现,偏移量将决定哪个被替换(不总是第二个)。因此需要替换的字符串始终是偏移量处的字符串。
String sample = "This is a sample string for replacement string with other string";
我想把第二个 "string" 替换为 "this is a much larger string",经过一些 Java 魔法,输出将会是这样的:
System.out.println(sample);
"This is a sample string for replacement this is a much larger string with other string"
我有文本开始的偏移量。在这种情况下,偏移量为40,被替换的文本是“string”。
我可以执行以下操作:
int offset = 40;
String sample = "This is a sample string for replacement string with other string";
String replace = "string";
String replacement = "this is a much larger string";
String firstpart = sample.substring(0, offset);
String secondpart = sample.substring(offset + replace.length(), sample.length());
String finalString = firstpart + replacement + secondpart;
System.out.println(finalString);
"This is a sample string for replacement this is a much larger string with other string"
但是除了使用Java的substring函数,还有更好的方法吗?
编辑 -
文本“string”至少会在示例字符串中出现一次,但可能会在该文本中多次出现,偏移量将决定哪个被替换(不总是第二个)。因此需要替换的字符串始终是偏移量处的字符串。
substring
更好的方法。除非在Apache Commons或其他第三方库中有什么东西。 - ajb