bash:使用regex只从文本文件中提取域名



我试图用regex只从文本文件中提取域名。

操作系统:Ubuntu

grep -oP '(?<=display_url":")[^"]+' /tmm/script/string.txt
test7.com/WRlklv5ir4Y
test8.com/r/IBlkO/com6entsu2026

我的命令(不返回任何结果(

grep -oP '(?<=display_url":")[^"]+' /tm/script/string.txt | grep '(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?.)+[a-z0-9][a-z0-9-]{0,61}[a-z0-9]'

所需输出:

test7.com
test8.com

您可能应该使用这样一个事实,即域名是行上的第一个东西,并由类似的东西分隔

cut -d/ -f1

你的数据看起来比普通的url更混乱,所以可能需要tr -d '\'或类似的东西。

相关内容

  • 没有找到相关文章

最新更新