Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有这样一条线
<zimlet name="com_feeder_sugarbee" version="0.7.1" description="Sugar Bee v0.7.1">
我只想提取字符串 0.7.1
你会建议什么工具?
我尝试过 sed、awk、grep ......我都不擅长其中任何一个。
编辑
像“.+”这样的模式在哪些语言/工具中?和 ”。*?” 应该返回最短的匹配吗?我确定我在某个地方看到过这个,但不记得在哪里。
一种使用方式sed:
sed
sed -n 's/.*version="\([^"]*\).*/\1/p' file
或者,如果您的版本grep支持 Perl-regex:
grep
grep -oP '(?<=version=")[^"]*' file
结果:
0.7.1
awk -F\" '{print $4}' file
这里有一些无用的文本,因为这个愚蠢的网络界面不会接受少于 30 个字符的答案。