Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 23.10.2013
Сообщений: 79
1

Валидация строки

23.02.2020, 13:23. Показов 451. Ответов 1

Author24 — интернет-сервис помощи студентам
Доброго времени суток!
Помогите написать регулярное выражение для проверки строки:

Варианты строк, которые нужно проверить:
1. $string = "1-5 7 10-23";
2. $string = "1 5 7";
3. $string = "2-23";

строка не должна проходить валидацию если в ней:
1. Если 2 и более пробелов подряд : $string = "1 2";
2. Если в ней встречается другие символы кроме пробела или "-" : $string = "1, 2"; и т.д
3. Если 2 и более "-" подряд: $string = "1--2";
4. Если перед или после знака "-" нет числа: $string = "-2 2- -3"
5. Если число 0, или двух- и более значное число начинается с нуля: $string = "1 0 0-2, 2-0"
6. Если что-то есть помимо цифр и знаков(кроме "-")

или может даже не регуляка...

Мб у кого займет это минут 10...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.02.2020, 13:23
Ответы с готовыми решениями:

Валидация строки
Подскажите почему при валидации строки при вводе 0, он определяет её как буквенную а не численную?...

Валидация формы
Добрый день! Надежда только на вас Сейчас будет запутанно, но постарайтесь понять Сделала...

Валидация формы
Добрый день! Надежда только на вас Сейчас будет запутанно, но постарайтесь понять Сделала...

Валидация телефона
Скажите илз как програмно определить правелен ли номер телефона! Ну код телефона можно из GeoIP...

1
Невнимательный
2596 / 973 / 321
Регистрация: 08.02.2013
Сообщений: 5,710
Записей в блоге: 2
23.02.2020, 15:35 2
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
error_reporting(-1);
ini_set('display_errors', '1');
header('Content-type: text/plain; charset=utf-8');
//header('Content-type: text/html; charset=utf-8');
 
foreach([
 '1-5 7 10-23',
 '1 5 7',
 '2-23',
 '1  2',
 '1, 2',
 '1--2',
 '-1- -2',
 '1-5 0 10-23',
 '1-5 07 10-23'] AS $str){
    echo preg_match('#^(?>[1-9]\d*[ -])*[1-9]\d*$#', $str)? 'Да':'Нет';
    echo "\t". var_export($str, 1) ."\n";
}
Не особо проверял
0
23.02.2020, 15:35
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.02.2020, 15:35
Помогаю со студенческими работами здесь

Валидация Email
Ребят помогите пожалуйста. При регистрации хочу чтобы обязательно вводились email адреса таким...

PHP валидация
Добрый день , уважаемые формучане ! Пишу форму валидации на php. Все вроде бы реализовал , на...

Валидация в админке
Вопрос простой: Нужна ли вообще валидация полей форм в админке? с одной стороны логика...

Валидация ссылок
Здравствуйте! Помогите мне пожалуйста. Как обезопасить сайт при вставке ссылки, ну, допустим в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru