具有反向引用的正则表达式

时间:2012-11-03 20:45:46

标签: regex grep backreference

所以我有这个非常长的文件,其中有像这样构建的行:

`somecode [ somecode > somecode ] somecode > somecode > somecode` 

我必须在括号之间搜索至少9 +或 - 字符的字符串,并且必须在两个'>'之间找到在这些括号之间匹配的相同内容。括号旁边...... 到目前为止,我想出了这个;

`cat file | egrep -n '*\[.*([-+]{9,}).*\].*(>).*\1.*(>).*' > out.txt`

1 个答案:

答案 0 :(得分:0)

我猜你的正则表达式,这就是你想做的事情

\[.*?([+-]{9,}).*?\].*?>.*?\1.*?>

如果你想让全行使用这个

^.*?\[.*?([+-]{9,}).*?\].*?>.*?\1.*?>.*?$