2012-12-02 2 views
-4

Я пытаюсь использовать регулярное выражение для поиска шаблона, в котором строка всегда будет состоять из 5 строчных букв, 2 цифр, а затем в нижнем регистре p.Использование регулярных выражений для поиска вхождения строки

Пример:

ingja44p 
+2

* Смотрите также [Открыть исходный Альтернативы RegexBuddy] (http://stackoverflow.com/questions/89718/is-there) и [Online regex testing] (http://stackoverflow.com/questions/32282/regex-testing) для некоторых полезных инструментов или [ RegExp.info] (http://regular-expressions.info/) для лучшего учебника. – mario

+1

Итак, что именно вы хотите? Вы хотите, чтобы строка имела этот шаблон? Вы хотите найти этот шаблон внутри большей строки? Вы хотите извлечь что-то (например, 2 цифры) из строки? [Вот отличный учебник], чтобы вы могли ускорить регулярные выражения. И [это семейство функций] (http://php.net/manual/en/ref.pcre.php) - это то, что вы используете в PHP. –

+0

Множество ppl downvoting в последнее время ... :( – Prof83

ответ

1
preg_match('/[a-z]{5}[0-9]{2}p/'); 

/начало и конец шаблона: "/ PATTERN /"

код [AZ] {5} означает любой нижний регистр буквы от A до Z на длину 5

код [0-9] {2} означает любые 2 цифры

р означает, что "P" :)

+0

Спасибо Prof83, отличная помощь, объяснение совершенное - Cheers –

2

Есть много utilities on the internet, которые могут помочь вам создавать и тестировать свои собственные регулярные выражения. В этом случае, однако, вы можете попробовать что-то вроде этого:

$subject = "String to test"; 
$pattern = "#[a-z]{5}\d{2}p#"; 

if (preg_match($pattern, $subject)) { 
    echo "A match was found."; 
} 
+1

Чтобы помочь ему понять, \ d означает DECIMAL эквивалент [0-9] :) – Prof83

+0

Точно. Что @ Prof83 сказал: ^) – rjz

+0

Приветствия - много помощи –

Смежные вопросы