隔离特定模式后的子字符串

mee*_*ena 2 shell-script text-processing

我在文件中有一行是这样的:

<TD><TR> monogram ended in 1 </TD></TR>
Run Code Online (Sandbox Code Playgroud)

monogram ended in始终是常数,但不是1,该数字始终变化并且最多可以是 3 位数字。

所以我需要一个命令来搜索monogram ended in 并获取该字符串后面的数字。

有人能帮我一下吗。

Phi*_*pos 6

sed你可以这样使用:

sed -n 's/.*monogram ended in \([0-9]*\).*/\1/p' filename
Run Code Online (Sandbox Code Playgroud)
  • 使用-n,您可以抑制正常输出
  • ubstitute命令s将整行(.*开头和结尾)替换为\1,这是里面的部分\(\),即数字
  • p标志打印匹配中的替换