【发布时间】:2013-11-13 16:34:34
【问题描述】:
我有这个格式的 JSON 文件;
[{
"item-id" : "0",
"item-name" : "Dwarf remains",
"item-examine" : "The body of a Dwarf savaged by Goblins.",
"shop-value" : "0.0",
"low-alch" : "0.0",
"high-alch" : "0.0",
"stab-bonus" : "0",
"slash-bonus" : "0",
"crush-bonus" : "0",
"magic-bonus" : "0",
"ranged-bonus" : "0",
"stab-defence" : "0",
"slash-defence" : "0",
"crush-defence" : "0",
"magic-defence" : "0",
"ranged-defence" : "0",
"strength-bonus" : "0",
"prayer-bonus" : "0",
},
{
"item-id" : "1",
"item-name" : "Toolkit",
"item-examine" : "Good for repairing a broken cannon.",
"shop-value" : "0.0",
"low-alch" : "0.0",
"high-alch" : "0.0",
"stab-bonus" : "0",
"slash-bonus" : "0",
"crush-bonus" : "0",
"magic-bonus" : "0",
"ranged-bonus" : "0",
"stab-defence" : "0",
"slash-defence" : "0",
"crush-defence" : "0",
"magic-defence" : "0",
"ranged-defence" : "0",
"strength-bonus" : "0",
"prayer-bonus" : "0",
}]
但有 25 000 个条目
但是文件有问题;
"prayer-bonus" : "0",
应该是
"prayer-bonus" : "0"
我怎样才能使用正则表达式或其他什么来只替换最后一位?
我正在使用 java。
顺便说一句:值并不总是“0”
那么我怎样才能让它成为一个通配符来替换所有呢?
【问题讨论】:
-
为什么不简单地使用 String.replace()?您不需要任何正则表达式即可将
"prayer-bonus" : "0",替换为"prayer-bonus" : "0" -
@JBNizet 我敢肯定它可能并不总是“0”。按照这个逻辑,他可以将这个确切的文件硬编码到他的程序中。
-
打开notepad++并替换字符串
-
使用 String.contains() - 搜索祈祷奖励,然后获取最后一个字符,如果是 a ,则删除它。
标签: java regex replace character