3
使用正则表达式查找和替换
我有一个带有一堆用户默认值的文件。我想更改一些文本,但是我在努力寻找匹配器和替换器。使用以下示例: ############################################################################### # Trackpad, mouse, keyboard, Bluetooth accessories, and input # ############################################################################### # Trackpad: enable tap to click for this user and for the login screen defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad Clicking -bool true 我想替换# Trackpad: ...为running "Trackpad: ..." 解决问题的方法是,我使用正则表达式测试器提出了一些建议: /\n\n#\s(.*)/g 如果我尝试在Vim中使用它,则对我不起作用: :/\n\n#\s(.*)/running "\1"/g 我想我的问题可以归结为两个具体问题: 如何避免搜索\n字符,而是确保#没有出现在搜索组的末尾? 如何有效使用捕获组? 以下是一些很好的答案。很难在这三者之间进行选择,但是我认为所选答案对于我的原始规格而言是最准确的。我建议您尝试使用实际文件中的所有三个答案,以查看您对它们的感觉。