我试图在Eclipse中使用这种常规表达来查找下面提到的行。
我有一个文本文件text.txt
:
teeet()
*test()
*test
* ()
test
asdgaer ()
* test()
我想找到正则表达式,找到以*
开头并以)
结尾的所有行
示例输出:
*test()
* ()
* test()
这是我到目前为止所做的:
grep "^\* . )$" Test.txt
输出为空白。
我试过了:
grep "^\*" Test.txt
输出结果是:
*test()
*test
* ()
* test()
也尝试过:
grep ")$" Test.txt
输出结果为:
teeet()
*test()
* ()
asdgaer ()
* test()
将它们结合起来,它们没有像我预期的那样工作。
答案 0 :(得分:3)
您可以使用:
grep '^\*.*)$' file
*test()
* ()
* test()
否则:
grep -E '^\*.*\)$' file
您必须在开始.*
结束*
之间保持)
与之间的任意数据匹配。
答案 1 :(得分:1)
我认为awk
对于这种检查也很方便:
$ awk '/^*/ && /)$/' file
*test()
* ()
* test()
/^*/
检查该行是否以*
开头。/)$/
检查该行是否以)
结尾。在&&
之间我们确保两件事都发生。