Я хочу разделить запрошенные фрагменты имени файла URL длиной до 2 символов, а затем переписать в структуру каталогов:
Ввод (построчно):
a.txt
ba.txt
cba.txt
dcba.txt
edcba.txt
fedcba.txt
gfedcba.txt
hgfedcba.txt
Желаемый результат:
a/file.txt
ba/file.txt
c/ba/file.txt
dc/ba/file.txt
e/dc/ba/file.txt
fe/dc/ba/file.txt
g/ef/dc/ba/file.txt
hg/ef/dc/ba/file.txt
Достигнутый результат (с последующим регулярным выражением):
///a/file.txt
///ba/file.txt
//c/ba/file.txt
//dc/ba/file.txt
/e/dc/ba/file.txt
/fe/dc/ba/file.txt
g/fe/dc/ba/file.txt
hg/fe/dc/ba/file.txt
Регулярное выражение:
([a-z]{1,2}?)??([a-z]{1,2}?)??([a-z]{1,2}?)??([a-z]{1,2})??\.txt
Замена:
$1/$2/$3/$4/file.txt
Я не нашел способа повторить совпадение и зафиксировать каждую итерацию.
К сожалению, даже если совпадение $1-$3 не найдено, этот замещающий текст будет содержать косую черту.