Регулярное выражение для соответствия от 3 до 4 цифр - PullRequest
0 голосов
/ 20 августа 2010

Я изучаю регулярные выражения и пытаюсь найти эту строку day1otlk_XXXX.gif, где 4 X будут от 3 до 4 случайных цифр.Это то, что у меня есть, пока я рядом?

qr/day1otlk_\d++\.gif/i

Ответы [ 5 ]

1 голос
/ 20 августа 2010

Можно указать 3 или 4 цифры со следующими значениями:

day1otlk_\d{3,4}\.gif

{} является модификатором повторение .Это немного точнее, чем * или +.Вы можете использовать его, чтобы указать точное количество повторений предыдущего шаблона или диапазон повторений.

a{m} - точно m a's
a{m,} - по крайней мере m a's
a{m,n} - не менее m, но не более n a

1 голос
/ 20 августа 2010

Вы указываете квантификатор диапазона с помощью фигурных скобок:

qr/day1otlk_\d{3,4}\.gif/i
1 голос
/ 20 августа 2010

Очень близко.Это должно сделать это ...

day1otlk_\d{3,4}\.gif

Фигурные скобки {} позволяют указать ранжированное количество повторяющихся символов {3,4} или точное число, например {4}.

1 голос
/ 20 августа 2010

регулярное выражение должно быть /day1otlk_(\d{3,4})\.gif/, возможно /i для нечувствительности к регистру. если он в строке, вы можете захотеть /\bday1otlk_(\d{4})\.gif\b/ вместо таких вещей, как "asdjklfhlday1otlk_5242.gifiasdytoi", которые вы, вероятно, не хотите.

{3,4} означает, что должно быть от трех до четырех цифр, и скобки для ввода этих четырех цифр в \ 1 или $ 1.

(бонус без ответа: если вам нужно ровно три или, скажем, пять, вы не можете этого сделать. {3,5} получит от трех до пяти. Вам потребуется \d{3}\d{2}? или что-то сортировка.)

1 голос
/ 20 августа 2010

Вроде близко. У вас есть \d для цифр.

Знаете ли вы, что такое оператор диапазона для регулярных выражений?

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