如何在Java中更改字符串
我需要重命名字符串变量,如下所示如何在Java中更改字符串,java,android,string,variables,substring,Java,Android,String,Variables,Substring,我需要重命名字符串变量,如下所示 String name = 20161018_175737_groupX_nameY.png; 进入 任何形式的帮助都是非常感谢的 谢谢。您可以使用正则表达式来标识一个数字序列,后跟一个下划线,后跟另一个数字序列,后跟另一个下划线,并将其替换为空字符串: name = name.replaceFirst("\\d+_\\d+_", ""); 正则表达式将为您提供最佳帮助: name = name.replaceFirst("\\d+_\\d+", "Bac
String name = 20161018_175737_groupX_nameY.png;
进入
任何形式的帮助都是非常感谢的
谢谢。您可以使用正则表达式来标识一个数字序列,后跟一个下划线,后跟另一个数字序列,后跟另一个下划线,并将其替换为空字符串:
name = name.replaceFirst("\\d+_\\d+_", "");
正则表达式将为您提供最佳帮助:
name = name.replaceFirst("\\d+_\\d+", "Background");
试试这个
String name = "20161018_175737_groupX_nameY.png";
name = name.substring(name.indexOf("_",name.indexOf("_")+1),name.length());
System.out.print("Background"+name);
可以使用正则表达式查找需要替换的字符串部分
String name = "20161018_175737_groupX_nameY.png";
String matchString="";
for(int index=0;index<name.length();index++){
if(name.substring(0,index).matches("^[0-9]+[\\_]{1}[0-9]+[\\_]{1}$")){
matchString=name.substring(0,index);
break;
}
}
name=name.replaceFirst(matchString,"Background_");
String name=“20161018\u 175737\u groupX\u nameY.png”;
字符串匹配字符串=”;
对于(int index=0;index谢谢大家。有很多解决方案。这是我的一个
StringBuffer strBffer= new StringBuffer(fileName);
strBffer.replace(0, 15, "Background");
String newName = strBffer.toString();
- 如果可替换部分不一致(可以是不带下划线的数字),但_groupX_nameY.png是常量,则您可以:
- 它选择所提供字符串(本例中不包括“\u groupX\u nameY.png”)之前的所有内容,并将其替换为“background”
name.replace(“20161018_175737”,“Background”);尝试更好地解释一下……因为对于您提出的问题,可能有90909085414093425894种解决方案……这应该是RHS上的一个刺痛文字吗?
StringBuffer strBffer= new StringBuffer(fileName);
strBffer.replace(0, 15, "Background");
String newName = strBffer.toString();
name.replaceFirst("^.*(?=(_groupX_nameY.png))", "background");