我正在使用'pcregrep'在UNIX中实现多行搜索.我希望匹配在第一次出现时停止.
例如,如果我在文件中有下面的文字:
mynameishin
hahahain
internetin
fdhsufsdhuiain
djbssdvbsbsduiain
sduigsyubsuvasdyivsyifvasin
Run Code Online (Sandbox Code Playgroud)
我想打印到'name'之后第一次出现'ain'.所以我只需要打印:
mynameishin
hahahain
Run Code Online (Sandbox Code Playgroud)
我正在执行:
pcregrep -M 'name.*ain' *.txt
Run Code Online (Sandbox Code Playgroud)
但是我得到的输出为:
mynameishin
hahahain
internetin
fdhsufsdhuiain
djbssdvbsbsduiain
Run Code Online (Sandbox Code Playgroud)
pcregrep -M 'name.*?ain' *.txt
Run Code Online (Sandbox Code Playgroud)
让它不贪婪!!!!!!!!!!! .*是贪婪的.它将消耗所有并在结束时停止.