regex - 如何使用 sed 匹配任意 URL?

标签 regex linux bash sed

我正在尝试用单个标记替换大量文档中的所有 URL,但是我正在执行的正则表达式似乎不起作用

s/www\.[a-z|0-9]*[.a-z]*/urltoken/g

这将匹配 www.example.com 或 www.example.com.co。但是,如果在那之后还有另一种字符或单词的组合,例如 www.foo.bar?q=lol 或 www.regexr.com/index.html?q=bar。我想在验证 url 的第一部分后适合任何字符组合,即 www.example.com.co_(Here goes those characters)_,但是在遇到单个空格之前。什么样的正则表达式适合 sed?

最佳答案

sed 's/www\.[^ ]*/urltoken/g' 文件

关于regex - 如何使用 sed 匹配任意 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25167797/

相关文章:

regex - Swift - 将属性字符串添加到括号中的项目

json - 如何读取并解析json文件并将其添加到shell脚本变量中?

linux - 如何进行 MONO Process() 调用以启动一个在父进程死亡时不会死亡的进程?

json - 如何检查 jq 结果是否为空?

regex - 你如何在 Stata 中只提取字符串的大写部分?

regex - Sublime Text :正则表达式删除不以开头的行

python - 在 Python 中使用正则表达式搜索并返回值

c - 从第一个字符串中的第二个字符串中删除所有出现的所有字符

linux - 从 bash 脚本更改 apache 配置文件值

bash - 为变量中的每个参数重复命令