【发布时间】:2014-09-12 22:51:51
【问题描述】:
我有一个字符串,比如
KEY1="VALUE1",KEY2="VALUE2",KEY3="VALUE3" this is the end of line.
我正在尝试匹配 KEY1="VALUE1" 类型的字符串并将它们替换为更新的键值。
例如:整个模式 --> KEY1="VALUE1", 需要替换为 NEW_STUFF
我使用的正则表达式如下所示:
's/"([,]?)$KEY=\".*\"," " "/"$NEW_STUFF"/g`
但这并不是很好的结局。如果我的$KEY=KEY1,
期待:NEW_STUFF KEY2="VALUE2",KEY3="VALUE3" this is the end of line.
实际结果:this is the end of line.
【问题讨论】:
-
你说你想提取键/值对,但是你的代码做了一个替换。你要哪个?
-
@Borodin 我想提取和替换。很抱歉造成混乱
-
那么您需要更详细地解释这意味着什么,包括显示您的文件的样子。
-
@Borodin 对这个令人困惑的问题感到非常抱歉。我修改了我的问题。希望这更清楚
-
因此,例如,
$KEY包含KEY1和$NEW_STUFF包含NEW_STUFF;并且您想使用$KEY和$NEW_STUFF的不同值多次执行此操作?我认为实际上$NEW_STUFF将类似于KEY1="NEWSTUFF"?