试图在 bash 中拆分一个大字符串

Trying to split a large string in bash

我正在尝试将一个大字符串拆分为:

string='<tr id="section1">98811</tr><tr id="section2">109148</tr><tr id="section3">30818</tr>'

我要取号(109148)

试试这个,

echo $string|grep -oP '(?<="section2">).*?(?=</tr>)'

这将是输出

109148

我使用 section2 为其他人提取特定 tr 标签的值,您需要更改元素的 id/name 以获得不同的值。

您可以使用 sed.

echo $string | sed 's/.*="section2">\([^<]*\)<.*//'