regex - URL 上的 Grok 和正则表达式
问题描述
给定以下输入:
https://api.example.net:443/v1/domain/action
https://api.exmaple.net:443/v2/domain/action?tag=test
https://api.example.net:443/v3/domain/action/test
Grok 正则表达式可以将以上所有内容分解为:
{
"request_endpoint": [
[
"https://api.example.net:443"
]
],
"request_version": [
[
"v3"
]
],
"request_domain": [
[
"domain"
]
],
"request_api": [
[
"action"
]
]
}
这是我能得到的最接近的值,但是/n
如果第一个示例通过,则有一个:
/(?<request_endpoint>[^/]+)+/(?<request_version>[^/]+)+/(?<request_domain>[^/]+)/(?<request_api>[^/!\?]+)
解决方案
我认为这解决了它,我得到了换行符,因为我的测试字符串有:(
/(?<request_endpoint>[^/]+)+/(?<request_version>[^/]+)+/(?<request_domain>[^/]+)/(?<request_api>[^/!\?]+)
推荐阅读
- sockets - Elixir 套接字重复 STX 和 ETX 作为响应
- html - 如何在网页上显示 .thb 文件?
- java - 在 Intellij 中编辑的 JMeter 外部 JSR223 java
- python - 将每一行与数据框中的其他行进行比较
- asp.net - LINQ IQueryable 嵌套循环
- apache-spark - 调试 Livy 作业
- c++ - 在抛出 'std::bad_alloc' what(): std::bad_alloc 的实例后调用终止。动态分配不当?
- tensorflow - TF2.0 中的 TensorFlow 分析
- angular - 如何配置 Angular 应用程序以便每个人都可以针对后端 GCP 使用它
- django - 为什么 Django 模板不能从对象字段中识别列表?