用正则表达式表示一串含有空格或换行的字符串
来源: 互联网 发布时间:2017-05-29
本文导语: 例如我要查找函数原型 int abc(); int与abc()之间可能是一个或者多个空格或者制表符,也可能是一个换行符。需要使用正则表达式表示。 我用grep命令查找这个函数,怎么表示法? grep -r "int[stn]+abc" /home;这个...
例如我要查找函数原型 int abc();
int与abc()之间可能是一个或者多个空格或者制表符,也可能是一个换行符。需要使用正则表达式表示。
我用grep命令查找这个函数,怎么表示法?
grep -r "int[stn]+abc" /home;这个语句什么都查不出来。
int与abc()之间可能是一个或者多个空格或者制表符,也可能是一个换行符。需要使用正则表达式表示。
我用grep命令查找这个函数,怎么表示法?
grep -r "int[stn]+abc" /home;这个语句什么都查不出来。
|
grep -Er
|
试下
grep -Pzor "int[sn]+abc" *
grep -Pzor "int[sn]+abc" *
|
-o, --only-matching
Show only the part of a matching line that matches PATTERN.
-P, --perl-regexp
Interpret PATTERN as a Perl regular expression.
-R, -r, --recursive
Read all files under each directory, recursively; this is equivalent to the -d recurse option.
-Z, --null
Output a zero byte (the ASCII NUL character) instead of the character that normally follows a file name. For example, grep -lZ outputs a zero byte after each file name instead of the usual newline. This
option makes the output unambiguous, even in the presence of file names containing unusual characters like newlines. This option can be used with commands like find -print0, perl -0, sort -z, and xargs -0 to
process arbitrary file names, even those that contain newline characters.
|
因为grep是按n切分行处理的吧。