我试图从一行中具有以下模式的文件中提取字符串
>------
-----表示可以是任何可变长度的字符串.一行中的起始模式是>
结束模式.
使用VIM的正则表达式可以进行命令行搜索吗?如果是这样可以打印出来?
或者必须写一个脚本?
我是VIM的新用户
尝试以下vim搜索:
/">\(.*\)<\/
这应该与该模式的任何行匹配.它还会存储它在开始和结束标记之间抓取的任何文本,\1
如果要在vim中进行搜索和替换,可以使用它们.例如:
:%s/">\(.*\)<\//Log message: \1/
如果要在命令行中使用grep来搜索该字符串,可以使用:
$ egrep "\">.*<\/" foo.txt
这将只打印出匹配的行foo.txt
.如果要将这些文件发送到新文件,请尝试:
$ egrep "\">.*<\/" foo.txt > new.txt