作为解决方法,我现在必须从配置文件中注释掉一行 clear_me 。示例文件如下所示。我不想在def clear_me之前添加评论
memset
def clear_me
FactValue.where("user_id = #{id}").delete_all
end
def clear_userdata
return unless .....
clear_me
clear_reports
end
我看到进行了两次替换,即在我的def也被注释掉之前的clear_me。我想念什么? :
- name: Comment out
replace:
path: <>
regexp: 'clear_me'
replace: '#clear_me'
backup: yes
我只需要注释掉独立的字符串clear_me,而不注释def中的一个字符串
答案 0 :(得分:1)
问题中的正则表达式模式将匹配文件中任意数量的单词clear_me
。将正则表达式模式更改为以下内容,只会更改您实际打算的行。
regex模式表示匹配任意行开头且具有clear_me的行
regex='^ +clear_me$'
或者,您也可以使用下面的正则表达式替换
regexp='^( +clear_me$)'
replace='#\1'