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

如何从文本中提取所有以www开头、.com结尾的链接?

提取文本中以www开头、.com结尾的链接

方法1:使用grep(简洁高效,推荐)

借助grep的Perl正则匹配能力,只输出匹配的目标内容:

grep -oP 'www\.[^"]*\.com' body.txt
  • -o:仅输出文本中匹配的片段,而非整行内容
  • -P:启用Perl兼容正则表达式
  • 正则www\.[^"]*\.com:匹配以www.开头,后续为任意非引号字符(适配示例中链接被双引号包裹的格式),最终以.com结尾的内容

方法2:使用sed

通过替换提取目标内容,再过滤空行:

sed -E 's/.*?(www\.[^"]*\.com).*/\1\n/g' body.txt | grep -v '^$'
  • -E:启用扩展正则表达式
  • 替换规则:将每行里的目标串提取出来,替换为目标串加换行符,最后用grep -v '^$'清除替换产生的空行

方法3:使用awk

循环遍历每行,逐个匹配并输出目标内容:

awk '{while(match($0, /www\.[^"]*\.com/, arr)) {print arr[0]; $0=substr($0, RSTART+RLENGTH)}}' body.txt
  • match()函数查找每行符合正则的内容,结果存入数组arr
  • 打印匹配内容后,将当前行剩余部分更新为匹配位置之后的内容,继续循环查找下一个匹配项

适配调整

如果你的文本里链接不是被双引号包裹,可把正则中的[^"]替换为[^[:space:]](匹配任意非空白字符),适配更通用的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 01:25:21