正则表达式:如何排除行内的特定字符串

时间:2017-08-06 15:47:01

标签: regex sumologic

我试图使用正则表达式过滤掉API调用名称。 问题是,我无法过滤掉我不需要的API调用中的特定字符串。

在以下示例中,我需要过滤掉/切断API调用,其中包含字符串" sg - " (如果存在)后面包含字符串的内容本身和其他人保持不变。

以下是示例:

GET /api/cloudsecuritygroup/sg-91f988f7/history - 443  
GET /api/cloudsecuritygroup/sg-30333554 - 443  
GET /api/cloudaccounts/secret - 443  
GET /api/audit/event-types - 443  
GET /api/user/me/iam-safe/devices - 443

结果应如下所示:

cloudsecuritygroup  
cloudsecuritygroup  
cloudaccounts/secret  
audit/event-types  
user/me/iam-safe/devices

1 个答案:

答案 0 :(得分:0)

也许这是regex您正在寻找:

(?<=GET \/api)(.+(?=\/sg-)|[^\s]+)

查看here