Как написать регулярное выражение для извлечения подстроки из строки?
Есть несколько разных строк:
http://dtarchive/directory/ag/book
http://dtarchive/main/child/directory/en/paper/
http://dtarchive/sidir/sichild/path/si/mag
http://dtarchive/lkdir/lkchild/path/lk/mz/
Из строки нужно извлечь последнюю папку, которая для всех строк разная, и может заканчиваться как слешем, так и без него. Как правильно написать одно регулярное выражение для получения этой папки?
Если строка без слеша, то использую [^/]*$
, как сделать со слешем в конце, понять не могу.
Также для каждой строки нужно обрезать 2 последние директории.
Например, для строки http://dtarchive/directory/ag/book
нужно оставить http://dtarchive/directory/
,
для строки http://dtarchive/lkdir/lkchild/path/lk/mz/
нужно оставить http://dtarchive/lkdir/lkchild/path/
Как для этого правильно прописать регулярное выражение?
Источник: Stack Overflow на русском