2010-05-23 2 views
1

Мне нужно регулярное выражение для нахождения всех файлов .h, .c и .cpp в папке. Помогите?Нужно регулярное выражение для .h или .cpp

[нет, это не домашнее задание, я просто не имеют времени, чтобы изучить регулярные выражения прямо сейчас]

+0

Помогите нам рассказать нам об этом? Вы уверены, что не имеете в виду 'glob'? – nc3b

+1

Вы не можете перечислить каталог с регулярным выражением. – SLaks

+0

@SLaks, он никогда не говорил, что находится в раковине. –

ответ

4

Try:

\.(h|c(pp)?)$ 

Но вам действительно нужно регулярное выражение? Где вы это используете?

+3

Вы фактически сохраняете 1 символ, явно включив «cpp», и читать его немного легче! Я бы, наверное, сделал то же самое, хотя, потому что это круче. – mpen

+0

@Mark, true, но подумайте, что произойдет, если добавлены C++ и cxx. ;) –

+1

Будет ли это достаточно прохладно? '\. (?: h | c (?: ([px +]) \ 1)?) $' – Amarghosh

2

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

/\.h$|\.c$|\.cpp$/ 

Вы также можете написать это:

/\.(h|c|cpp)$/ 
Смежные вопросы