У меня есть следующие возможные URL:
https://letterboxd.com/username/film/sometitle/
https://letterboxd.com/username59/film/sometitle/1/
https://letterboxd.com/username59/film/sometitle/2/
Я хочу, чтобы все они отображались так, без имени пользователя и без конечного номера, если он есть:
https://letterboxd.com/film/sometitle/
✔ Я могу удалить конечный номер, где он существует, с помощью этого:
=IF(REGEXMATCH(A2,"/film/(.*?)/\d/"), left(A2,len(A2)-2), A2)
результат: https://letterboxd.com/username59/film/sometitle/
Я должен быть здесь осторожен, потому что если название фильма просто ди git, я не хочу его замену, поэтому я указал, что между / film / и последним di git должно быть содержимое. (например, я должен различать guish между film/9/
и film/sometitle/9/
✔ Я могу удалить это имя пользователя (хотя, вероятно, мне придется приходите думать о других типах персонажей, если подумать):
=REGEXREPLACE(A2, regexextract(A2, "\/[A-Za-z0-9]+\/"),"/")
результат: https://letterboxd.com/film/sometitle/2/
❌ Но я не могу на всю жизнь понять, как комбинировать и то, и другое - в одной формуле! Я могу выполнить одну из формул по результатам другой, но не могу объединиться, чтобы все это было сделано за один раз. oop. Я перепробовал слишком много комбинаций. перечислить здесь, но этот, который я считаю наиболее перспективным:
=REGEXREPLACE(A2, REGEXEXTRACT(IF(REGEXMATCH(A2,"/film/(.*?)/\d/"), left(A2,len(A2)-2), A2),"\/[A-Za-z0-9]+\/"),"/")
результат: https://letterboxd.com/film/sometitle/2/
Он не позаботился о конце 2/
, и я не не знаю почему. Я предполагаю, что это связано с некоторой формой округлости или порядком вещей?