【发布时间】:2021-07-17 08:36:09
【问题描述】:
我需要在我的 Java 程序中附加/替换以下模式。
示例字符串:
1: {\"values" : ["AnyValue1", "TestValue", "Dummy", "SomeValue"], "key" : "value"}
2: {\"otherValue\": \"AnyValue1\", \n" + "\"values\" : [\"AnyValue1\", \"TestValue\", \"Dummy\", \"SomeValue\"], \"key\" : \"value\"}
此值数组中可以有N 个值。
我需要用_val 附加所有值。但是,只有values 中的值应该附加_val。
Output 1: { "values" : ["AnyValue1_val", "TestValue_val", "Dummy_val", "SomeValue_val"], "key" : "value" }
Output 2: {"otherValue": "AnyValue1",
"values" : ["AnyValue1_val", "TestValue_val", "Dummy_val", "SomeValue_val"], "key" : "value"}
我想知道是否可以使用正则表达式替换而不是循环?
内容在字符串中:
String content = "{ \"values\" : [\"AnyValue1\", \"TestValue\", \"Dummy\", \"SomeValue\"], \"key\" : \"value\" }";
【问题讨论】:
-
答案取决于您存储信息的方式。正则表达式可以应用于
strings或texts。 如果你有一个字符串或一些文本 ={ "values" : ["AnyValue1", "TestValue", "Dummy", "SomeValue"], "key" : "value" }那么你可以对它应用正则表达式。但是,如果值存储在数组中,则需要先提取值,然后再对其进行任何操作。 -
这被存储为字符串:字符串内容 = "{ \"values\" : [\"AnyValue1\", \"TestValue\", \"Dummy\", \"SomeValue\"] , \"key\" : \"value\" }";
-
届时我将研究解决方案。
标签: java regex string replace regexp-replace