我正在尝试编写搜索并替换正则表达式(在ruby中)以替换给定上下文中字符串中所有字符的实例。
正则表达式需要替换“。”的所有实例。在一个json键中,我正在与引用作斗争。我有一种感觉,我需要以某种方式使用环视,但我尝试过的变化似乎无法发挥作用。
一些示例字符串:
, "key1.name" : " value.something "
, "key2.complex.name" : "value.else"
, "this.is.the.most.complex.name" : "value"
我最初使用此正则表达式替换单个事件(将其替换为“FULLSTOP”):
s/, "([^.]+)\.([^"]+)" :/, "\1FULLSTOP\2" :/g
期望的输出:
, "key1FULLSTOPname" : " value.something "
, "key2FULLSTOPcomplexFULLSTOPname" : "value.else"
, "thisFULLSTOPisFULLSTOPtheFULLSTOPmostFULLSTOPcomplexFULLSTOPname" : "value"
我猜我需要在搜索中以某种方式使用(?=\.)
,但不确定如何正确使用引用。我使用开头,
和结束:
作为定义json密钥的上下文的方法。
提前感谢。
答案 0 :(得分:1)
您可以将以下内容用作示例:
str = ', "this.is.the.most.complex.name" : "value';
str = str.gsub(/\.+/, 'FULLSTOP');
puts str;
我没有注意到'价值'部分。
你应该能够轻松地做到这一点。
答案 1 :(得分:1)