cmd findstr 字符串查找增强使用说明

2019-01-30 05:22:02于海丽

1.txt
a.txt

1.txt中的类容如下:除非参数有 /C 前缀,请使用空格隔开搜索字符串。
例如:

'FINDSTR "hello there" x.y' 在文件 x.y 中寻找 "hello" 或
"there"。'FINDSTR /C:"hello there" x.y' 文件 x.y 寻找
"hello there"。
[code]
由于加上了/m参数,所以只列出包含指定字符的文件名。
4.查找以指定字符开始或结尾的文本行
这个功能和前面介绍的最大不同就在于涉及到了“元字符”,如果你不明白什么是“元字符”,那也不用担心学不好这一节,这就好像不明白“water”是什么,也不会影响喝水。
a.txt内容:
[code]
good hello
你好 hello world
Hello World
Hello Boy
hello ,good man.
goodbye!

如何查找以hello(忽略大小写)开始的行?
两种方法:
①./b参数
代码:

C:UsershelloworldDesktop>findstr /b /i "hello" a.txt

效果:

Hello World
Hello Boy
hello ,good man.

good hello 和 你好 hello world,这两行都没有显示出来,因为hello不在行的开始处。
②.^符
这里的^可不是转义符,而是正则表达式中的“匹配行开始的位置”。
代码:

C:UsershelloworldDesktop>findstr /i "^hello" a.txt

效果:

Hello World
Hello Boy
hello ,good man.

学完了以查找指定字符开始的行,下面学习查找以指定字符结尾的行。
如何查找以hello(忽略大小写)结尾的行?
同样有两种方法:
①./e参数
代码:

C:UsershelloworldDesktop>findstr /e /i "hello" a.txt

结果:

good hello

只显示了“good hello”,因为其它行虽然有“hello”,但是他们都没有以“hello”结尾。
②.$符
代码:

C:UsershelloworldDesktop>findstr /i "hello$" a.txt

结果:good hello
到此,我们已经学习了两个正则表达式的元字符:^和$(分别和他们功能相对应的有/b、/e参数)。
5.查找与指定字符完全匹配的行
首先修改a.txt的内容:

hello
hello hello
good hello
你好 hello world
Hello World
Hello Boy
hello ,good man.
goodbye!

懂得举一反三的的童鞋可能会试着尝试以下代码:
相关文章 大家在看