我有代码,我使用Grep在某些HTML代码中搜索数字。
以下是我到目前为止:
grep -ioP '°C">[0-9]*</a></p>' ${site}_ec_wk1
而不是正数和负数都有两个条目,例如:
grep -ioP '°C">[0-9]*</a></p>' ${site}_ec_wk1
grep -ioP '°C">-[0-9]*</a></p>' ${site}_ec_wk1
如何只使用一行来捕获负数和正数?
答案 0 :(得分:2)
我会按照以下思路思考:
grep -ioP '°C">[-+]?[0-9]+</a></p>' ${site}_ec_wk1
^^^^^ ^
add change
这将允许一个可选的标记(正或为负)并且还需要至少一位数字:+
表示一个或多个,*
表示零或更多。
答案 1 :(得分:0)
使用-
符号的量词:
grep -ioP '°C">-?\d*</a></p>' ${site}_ec_wk1