我想從我的url中提取第二個字。正則表達式從URL中提取第二個字
例子:
/search/acid/all - extract acid
/filter/ion/all/sss - extract ion
我試過一些方法
/.*/(.*?)/
,但沒有運氣。
我想從我的url中提取第二個字。正則表達式從URL中提取第二個字
例子:
/search/acid/all - extract acid
/filter/ion/all/sss - extract ion
我試過一些方法
/.*/(.*?)/
,但沒有運氣。
有兩件事情:
/
必須要躲過這樣\/
(.*?)
將匹配任何字符的最小量,包括零個字符。在這種情況下,它將始終與一個空字符串匹配。.*
將採取儘可能多的字符就可以了,包括正斜槓一個簡單的解決方案將是:
/.+?\/(.*?)\//
更新:
由於您使用的JavaScript,請嘗試以下代碼:
var url = "/search/acid/all";
var regex = /.+?\/(.*?)\//g;
var match = regex.exec(url);
console.log(match[1]);
變量match
是一個列表。該列表的第一個元素是完全匹配(匹配的所有內容),因爲您對我們希望匹配的特定組感興趣(我們在正則表達式中放入括號中),所以您可以忽略它。
你可以看到工作代碼here
感謝您的快速回復,但這是提取第一個和第二個詞。 – divein
@divein你在用什麼編程語言? – Rodolfo
我正在使用JavaScript。我試過這個編輯器https://regex101.com/r/0NpWcy/3 – divein