2017-08-06 54 views
0

我想使用正則表達式過濾掉API調用名稱。 問題是我無法從API調用中過濾出不需要的特定字符串。正則表達式:如何排除行內的特定字符串

在以下示例中,我需要從包含字符串「sg-」(如果存在)的API調用中過濾/剪切包含字符串本身以及其他字符串未觸及的字符串。

這裏是例子:

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 
+0

你只是想檢查一個與你的正則表達式的鏈接嗎? – cansik

+0

我想要做的是使用正則表達式獲取API調用的名稱。 – DuduSaharov

+0

好吧,但是例如'audit/event-types'不包含'sg-'。那爲什麼它也是結果呢?或者你可以給出更多關於應該如何工作的規範?你到目前爲止做了什麼? – cansik

回答

0

這也許是regex你正在尋找:

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

檢查出來here

+0

是的,該解決方案工作。 Thx很多。 – DuduSaharov

相關問題