You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用grep正则捕获a标签中key和id的无引号值?

使用grep正则捕获key和id的值

要从目标HTML代码中提取key和id的值并输出为string 92340,可以使用带PCRE支持的grep命令,结合精准的正则匹配:

grep -Po '(?<=key=)[^"]+|(?<=id=")[^"]+' 你的输入文件 | tr '\n' ' '

说明:

  1. -P:开启Perl兼容正则表达式(PCRE),支持正向预查等高级语法
  2. -o:只输出匹配到的内容,而非整行
  3. 正则部分:
    • (?<=key=)[^"]+:匹配key=之后、下一个双引号之前的所有字符(即key的值)
    • (?<=id=")[^"]+:匹配id="之后、下一个双引号之前的所有字符(即id的值)
    • |:逻辑或,同时匹配两个目标内容
  4. tr '\n' ' ':将grep输出的两行结果合并为一行,用空格分隔

原正则问题分析:

你之前使用的(?<=<a href="\/stats\.php\?key=).*(?=" class="")中,.*是贪婪匹配,会从key=后一直匹配到最后一个" class=""前的所有内容,导致把中间的" id="92340也包含进去。改用[^"]+可以精准匹配到双引号为止,避免过度匹配。

内容的提问来源于stack exchange,提问作者ClassyUnderexposure

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 12:32:21