Регулярные выражения для сопоставления файлов со специальным форматом - PullRequest
0 голосов
/ 01 июля 2010

У меня есть следующие имена файлов: Когда x - это число (x может быть числом от 0 до 100)

fileX
fileXblabla
fileX.X
fileX.Xblabla

Например,

fileX --> file1
fileXblabla --> file1blabla
fileX.X --> file5.3
fileX.Xblabla --> file2.9blabla

, мой вопрос: какчтобы сопоставить каждый из следующих типов файлов в каталоге (по ls и регулярным выражениям или что-то еще)

Например,

 fileX

В каталоге мы хотим получить все файлы, такие как: file1или file2 или file3… ..file100

 fileXblabla

В каталоге мы хотим получить все файлы, такие как: file1bla или file2bla или file3bla… ..file100bla

 fileX.X

В каталоге мы хотимполучить все файлы, например: file1.1 или file2.1 или file3.1… ..file100.100

 fileX.Xblabla

В каталоге мы хотим получить все файлы, такие как: file1.1bla или file2.1bla или file3.1bla… ..file100.100bla

Ответы [ 2 ]

0 голосов
/ 01 июля 2010

Попробуйте это:

^file(100|[1-9]\d|\d)(\.(100|[1-9]\d|\d))?(bla)*$
0 голосов
/ 01 июля 2010

Следующий REGEX будет соответствовать всем 4 шаблонам:

file(\d{1,3})(\w*)(?:\.(\d{0,3})(\w*))?

X в fileX будет в обратной ссылке 1
blabla в fileXblabla будет в обратной ссылке 2
Y в fileX.Y будет в обратной ссылке 3
blabla в fileX.Yblabla будет в обратной ссылке 4 .

Если вам нужна дополнительная помощь, просто напишите комментарий.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...