[英]find the path param using regex in the url
從URL查找路徑參數的正則表達式是什么?
http://localhost:8080/domain/v1/809pA8
https://localhost:8080/domain/v1/809pA8
想要使用正則表達式從上述URL檢索值(809pA8),最好使用java。
我建議你做類似的事情
url.substring(url.lastIndexOf('/') + 1);
如果您真的更喜歡正則表達式,則可以
Matcher m = Pattern.compile("/([^/]+)$").matcher(url);
if (m.find())
value = m.group(1);
我會嘗試:
String url = "http://localhost:8080/domain/v1/809pA8";
String value = String.valueOf(url.subSequence(url.lastIndexOf('/'), url.length()-1));
我認為這里不需要正則表達式。
編輯:對不起,我犯了一個錯誤:
String url = "http://localhost:8080/domain/v1/809pA8";
String value = String.valueOf(url.subSequence(url.lastIndexOf('/')+1, url.length()));
看到此代碼在這里工作: https : //ideone.com/E30ddC
正如其他人所指出的,對於您的簡單情況,正則表達式是一個過大的殺傷力。 但是,如果您有更多的案例,這就是為什么您更喜歡正則表達式,那么,如果您使用的是Spring, 請看一下Spring的AntPathMatcher#extractUriTemplateVariables 。 實際上,與直接使用正則表達式相比,它更適合提取路徑變量。 這里有一些很好的例子 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.