仅匹配第一行和最后一行的文本?

时间:2011-09-08 21:14:33

标签: regex

如何使用另一个正则表达式在最后一行中使用正则表达式和文本搜索第一行中的文本 (多行字符串)

  (blablabla)
  blablabla
  blablabla
  (blablabla)
  blablabla

如果括号中有两行文本,则一个正则表达式仅匹配包含括号的第一行和一个正则表达式中的文本,以匹配包含括号的第二行中的文本。

1 个答案:

答案 0 :(得分:2)

既然你提出了更清楚的问题,那么就去吧:

egrep "\(.*\)" <inputfile> | tail -1

egrep找到包含括号括起的文本的行。 tail -1将输出修剪为找到的最后一行。

由于我很确定你不是在寻找看起来像(aabssa)的东西,http://rubular.com/是一个优秀的正则表达式参考/测试者。

下面的旧答案

由于不清楚你是否需要在同一步骤中完成这些操作,或者甚至比较它们,所以对于Unix shell来说这是怎么回事。

第一行: head -n 1 <input file> | egrep "<regex>"

最后一行: tail -n 1 <input file> | egrep "<regex>"

向我们提供更多信息,您可能会得到更有帮助的答案。