如何在Java中使用正则表达式替换字符串中的数字?

如何在Java中使用正则表达式替换字符串中的数字?,java,regex,replace,Java,Regex,Replace,我有这样的绳子 "{"name:John","Age:15","width:500","height:300"},{"name:Mike","Age:25","width:600","height:400"}"; 我怎样才能把宽度和高度后面的数字替换成这样呢 "{"name:John","Age:15","width:100","height:100"},{"name:Mike","Age:25","width:100","height:100"}"; 感谢使用此正则表达式进行搜索: (wi

我有这样的绳子

"{"name:John","Age:15","width:500","height:300"},{"name:Mike","Age:25","width:600","height:400"}";
我怎样才能把宽度和高度后面的数字替换成这样呢

"{"name:John","Age:15","width:100","height:100"},{"name:Mike","Age:25","width:100","height:100"}";

感谢使用此正则表达式进行搜索:

(width|height):\d+
并替换为:

$1:100

Java:

str = str.replaceAll("(width|height):\\d+", "$1:100");

在Java中,我们可以在look behind()中使用备选方案列表,它们的长度不必相同:

String str = "\"{\"name:John\",\"Age:15\",\"width:500\",\"height:300\"},{\"name:Mike\",\"Age:25\",\"width:600\",\"height:400\"}\";";
System.out.println(str.replaceAll("(?i)(?<=width:|height:)\\d+", "100"));

这是json字符串的一部分吗?堆栈溢出用于解决有关编写代码时遇到的问题的特定问题。试一试,阅读文档、教程等,然后问你是否遇到麻烦。@T.J.Crowder大多数在SO的印度人都会犯语法错误(包括我)。我不知道这个句子是否有语法错误。谢谢你的快速回复:)
"{"name:John","Age:15","width:100","height:100"},{"name:Mike","Age:25","width:100","height:100"}";