Прежде всего, [ps1|bat]
соответствует одному символу, p
, s
, 1
, b
, a
или t
.Чтобы создать группу, которая соответствует ps1
или bat
, вам понадобится группирующая конструкция, (ps1|bat)
или (?:ps1|bat)
(группа без захвата).
Чтобы соответствовать любому символу столько раз, сколько возможнокроме новой строки, вы можете использовать .*
.Чтобы ограничить его любым символом, кроме точки, используйте класс символов с отрицанием [^.]
.Обратите внимание, что [^.]*
будет соответствовать 0 или более символам, отличным от точки, в то время как [^.]+
будет соответствовать 1 или более.
Следовательно, вы можете использовать это регулярное выражение, чтобы разрешить любые символы от \\mudit.bah.
до ps1
или bat
:
^\\{2}mudit\.bah\..*\.(?:ps1|bat)$
Или с ограничением только одной без точечной части между ними:
^\\{2}mudit\.bah\.[^.]*\.(?:ps1|bat)$
См. regex demo .
Подробности
^
- начало строки \\{2}
- две обратные косые черты mudit\.bah\.
- подстрока mudit.bah.
[^.]+\.
- любые 1+ символов, кроме .
, а затем точка (?:ps1|bat)
- либо ps1
, либо bat
$
- конец строки.