我有一个带有property=value
的.sh脚本。让它成为:
some_property =“某些价值”
该属性的值在脚本中使用,脚本在Java代码中启动。我想动态更改此属性的值。我尝试使用replaceFirst()
方法,但我不知道使用regexp正确替换它的“some_property”的实际值。
如何通过"some_property="
替换以some_property=my_value
开头的单行来编辑.sh文件?顺便说一下文件中有几个地方可以满足模式“some_property =”,所以我需要改变第一次出现。
答案 0 :(得分:6)
你应该没有正则表达式:
line.replaceFirst("some_property=.*$", "some_property=\"" + your_value + "\"");
答案 1 :(得分:1)
您可以使用String.indexOf(int)获取=
和\n
的排名,然后使用=
替换\n
和some_property=(.+)
之间的字符串,例如{{1}} 3}}
顺便说一句 - {{1}}(并取代1美元)不行吗? :)