У меня есть текстовый ввод, который выполняет поиск по субъекту, названию предмета, семестру / году, и я хочу искать все в одном вводе.

1/2010


-/----

Мне нужно проверить, верен ли результат или нет. Как это сделать?

0
Ds Klur 10 Апр 2014 в 10:55

3 ответа

Лучший ответ

Семестр 1 или 2, поэтому вы можете использовать:

if (preg_match('#\b[12]/\d{4}\b#', $string)) {
    echo "match\n";
}

\b - это граница слова, при условии, что перед цифрой нет символа char
[12] соответствует цифре 1 или 2
/ буквально означает /
\d{4} соответствует 4 цифрам
\b - это граница слова, при условии, что после цифр нет символа char

1
Toto 10 Апр 2014 в 07:09

Если вы проверяете конкретный формат, я бы предложил регулярное выражение. [0-9]/[0-9]{4} будет соответствовать любому числу, за которым следует "/", за которым следуют 4 числа. Если вам нужны буквы и цифры, то [0-9a-zA-Z]/[0-9a-zA-Z]{4} будет соответствовать этому.

0
Helpful 10 Апр 2014 в 06:58

Попробуйте использовать strpos. И сделайте оператор if else.

if (strpos($string, '/') == false) //the '/' does not exist
  execute code
else
  execute code
0
mateeyow 10 Апр 2014 в 07:01