Я пытаюсь сопоставить имя файла, которое заканчивается именно на .en.html, используя регулярное выражение, например .en.html$ Для примера это работает z_.en.html, но не работает с a.len.html - оно совпадает с .len.html
Любая помощь?
решение1
Вам необходимо экранировать символ .
, который считается подстановочным знаком в регулярном выражении:
~$ [[ z_.en.html =~ \.en\.html$ ]] && echo match || echo no_match
match
~$ [[ a.len.html =~ \.en\.html$ ]] && echo match || echo no_match
no_match
Также,https://regex101.com/очень полезен для отладки проблем с регулярными выражениями.