替换Java字符串中的泛型字符

时间:2017-09-18 17:02:25

标签: java android

我想知道如何替换Java字符串中的通用字符:

String original = "alt width = (SOME NUMBERS)"

我希望像

一样
String edited = "alt width = 640"

我没有在网上发现任何事情。

3 个答案:

答案 0 :(得分:2)

足够通用以替换任何整数:

int number; // this can be any integer
String original = String.format("alt width = %d",number);

或者,如果数字表示为字符串,例如" 111,121"

String numbers;
String original = String.format("alt width = %s",numbers);

答案 1 :(得分:0)

replace方法可以解决问题:

String edited = original.replace("(SOME NUMBERS)", "640");

编辑:
根据评论中的说明,您可以删除最后三个字符并将其替换为您需要的字符:

String edited = original.substring(0, original.length() - 3) + "640";

答案 2 :(得分:0)

最明显的答案是String.replace选项。但你已经得到了答案。

更通用的选项是使用正则表达式:

String original = "alt width = 123";
int someNumbers = 640;
String edited=original.replaceFirst("[0-9]+",Integer.toString(someNumbers));
System.out.println(edited);

这将替换字符串上的任何数字。所以输入字符串可以不同,但​​你会得到相同的结果:

String original = "alt width = 123 cm";
String original = "alt width = 123; alt height = 456";  //only 123 will be replaced 456 will be left as is.

您可以修改正则表达式以符合其他条件。