Вы регулярное выражение не работает, потому что вы говорите, что следующие символы не должны включать в себя точку (например, (?!\..*)
), но сразу же вы говорите, что они должны (т.е. .html
).
единственное решение, которое было бы приемлемым, это следующее:
\.\w+\.html$(*SKIP)(*F)|\.html$
Regex live demo
Распределение регулярных выражений:
\.\w+\.html$
Match.html
файл с предыдущим расширением (*SKIP)(*F)
Выбросьте его |
Или \.html$
Соответствует .html
файлу, который имеетне предшествующее расширение
Это не позволяет .{alphanum + _}.html
, например:
.php.html
.mp4.html
.j_p_g.html
Но не связывается с разными именами файлов одновременно и допускает шаблоны, как показано ниже: