regex - 正则表达式,我怎样才能忽略部分匹配?例如,当我对两个空格之间的单词进行正则表达式时,“.co”将匹配“.com”
问题描述
我正在尝试正则表达式并从大型文本文件中提取一些 URL。大多数 URL 没有附加 HTTP/HTTPS,因此这使得这变得更加困难。
如果我想对包含“.co”的 URL 进行正则表达式,我这样做是为了让正则表达式找到“.co”并从出现前的第一个空格和出现后的第一个空格中选择:
(\S+\.co\S+)
但是,当我在文件中也有带有 .com TLD 的 URL 时,就会出现问题。
例如,此正则表达式从下面选择所有 URL,而不仅仅是“.co” URL
pizza.com/test is good
pizza.co/test is great
正则表达式提取:
pizza.com/test
pizza.co/test
我只希望它提取:
pizza.co/test
这是我的正则表达式示例: https ://regexr.com/5hl2h
有谁知道我可以用正则表达式实现这一目标的方法吗?还是我应该寻找替代解决方案?
非常感谢这里的帮助。
解决方案
推荐阅读
- r - R:合并数据,同时保留重复数据集的值
- java - 如何在 Netbeans 中以 Executable(.exe) 导出我的 Java 项目?
- asp.net-core - 从 ASP.NET Core 中间件管道写入控制台
- django - 为在 Windows Server 2016 IIS 上运行的 Django 项目运行“git pull”
- vue.js - 从 vue build 更改资产的根目录
- excel - 进行更改的返回用户
- javascript - 架构的 Node.js 问题。用户 ID 验证错误
- windows - 如何让 Jena Fuseki 在 cygwin bash shell 中运行?
- ruby-on-rails - 如何禁用 webpacker 加载器?
- javascript - 有没有办法在功能组件中将数据传递给 props.children