Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 替换字符串的特定位置_Java_String_Str Replace - Fatal编程技术网

Java 替换字符串的特定位置

Java 替换字符串的特定位置,java,string,str-replace,Java,String,Str Replace,我有一个固定长度的字符串记录,我想用不同的字符串值替换特定位置的字符串 String record ="ABCU0MARK 111111118 CFTT 130913 101100023424"; String extractAccountaccountNumber = record.substring(79, 87); String newAccountNumber = "some value" record = record

我有一个固定长度的字符串记录,我想用不同的字符串值替换特定位置的字符串

String record ="ABCU0MARK                          111111118 CFTT        130913   101100023424";
String extractAccountaccountNumber = record.substring(79, 87);
String newAccountNumber = "some value"
record = record.replaceFirst(extractAccountaccountNumber,newAccountNumber);

如果存在重复的值,这可能不起作用。请注意

您只需将其分配给一个新的字符串变量,或分配给其自身:

string = string.replace("to", "xyz");

结果如下:

提取帐号:FTT

结果:ABCU0MARK 11111111 8 Csome值130913 1011000023424

record=record.substring(0,79)+newAccountNumber+record.substring(87)不起作用?我编写了一个类,它的字段中包含所有固定长度值的setter-getter方法。它有两个方法,populateFromString(String recordStr)和getRecordsString();一旦我填充了对象,我就可以替换这些值并取回字符串。你的建议行不通,因为如果“to”也在其他位置,我会替换多个位置,而且字符串中的数字很可能重复。mmc18:我有相同的代码,你写的代码。我唯一担心的是,如果字符串中的同一组数字存在于任何其他固定长度的位置,比如在我要替换的位置之前,它将不起作用。它将替换错误的位置。可能是关于记录的长度
String newString = string.replace("to", "xyz");


public class Run1 {

public static final int its = 4;

public static void main(String[] args) {

    String record ="ABCU0MARK                          111111118 CFTT        130913          101100023424";

    String extractAccountaccountNumber = record.substring(46, 55);
    System.out.println("extractAccountaccountNumber:"+extractAccountaccountNumber);
    String newAccountNumber = "some value";
    String result=record.replaceFirst(extractAccountaccountNumber,newAccountNumber);
    System.out.println("result:"+result);

}
}