【发布时间】:2015-02-18 02:09:02
【问题描述】:
我有这样一行的文件:
<div class="cell contentCell bbActiveRow" tabindex="-1" style="width: 150px; left: 77px; display: block;" cellposition="15,2"><div class="cell contentCell bbActiveRow last-child" tabindex="-1" style="width: 150px; left: 697px; display: block;" cellposition="15,6">159</div></div><div class="contentRow bb_row" rowindex="16" style="display: block; top: 429px;"><div class="cell first-child " title="Go to box" tabindex="-1" role="linkAction" cellposition="16,0"><span class="pre-child" style="background-color:#16A765;"> </span><span class="link" role="link"> </span></div>
我想抓住的重要一点是 159 in:
,6">159</div>
我可以用 grep 很好地理解它:
cat c |grep ',6\">[0-9]\+<'
现在,我想做的实际上是捕获数字本身 (159) 并将其打印出来。 请注意,我拥有的实际文件有几行。理想情况下,只会打印出数字。
我以为我可以用 awk 做到这一点:
cat c | awk ' /,6\">([0-9]\+)/ { print $1 } '
但是不,没有任何东西被打印出来。 准备好正则表达式,并且知道文件中有几行包含与表达式匹配的条目(具有不同的数字),您将如何挤出这些数字?
【问题讨论】:
-
在我看来并不是最好的方法;但是如果你想那样做,你可以使用 gawk 吗?