我输入字符串如下。
created_at:2017-02-16 13:22:16,
created_at:2017-02-16 13:22:16,
我想要的是获得created_at
&的双引号要做同样的事,我的正则表达式是\b(.*\s)(:\s)
现在格式化我使用替换为"$1" $2
以下是我得到的输出
" created_at" :2017-02-16 13:22:16,
" created_at:2017-02-16 13" :22:16,
我遇到的问题是第二行双引号在13之后移位。我想做的是正则表达式总是考虑第一次匹配而不是最后一次匹配,以便第二行输出与第一行相同。
有没有办法使用正则表达式完成这项工作?
答案 0 :(得分:0)
<强>更新强>
根据您在评论中更新的请求,此处的内容也与您的单行案例相符:
(.*?)\s?(:.*?)(\\n\\n|$)
可以在这里看到: https://regex101.com/r/zjQAL2/4
<小时/> 您可以将其更改为从字符串的开头开始,并且是多行的,如下所示:
/^(.*?)\s?(:.*)$/gm
看到它的实际效果: