|
Модераторы: Aliance, skyboy, MoLeX, ksnk |
|
bscint13 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 13.2.2014 Репутация: нет Всего: нет |
Есть номер счёта ЭПС (электронно-платёжная система), на примере OKPAY... имеет вид
OK456789656 Помогите, пожалуйста, составить правило для проверки (валидации) номера счёта, сам увы, пока не смог разобраться, дремучий лес... Должно быть две большие буквы и именно OK и 9 цифр, не меньше и не более... Возможно ли составить такое правило в одну строку... начиная с preg_match и что обозначает восклицательный знак перед preg_match ? пример - !preg_match Заранее благодарен всем, кто поможет. |
|||
|
||||
bscint13 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 13.2.2014 Репутация: нет Всего: нет |
Молчаливое безразличие говорит о том, что никто не знает или не хочет???
С восклицательным знаком разобрался, помощь не требуется, а вот с правилом всё же пока нужна... |
|||
|
||||
AVA12 |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 135 Регистрация: 4.5.2008 Репутация: нет Всего: 4 |
Молчаливое безразличие переводится как "RTFM, нуб".
Задача тривиальна, никаких алгоритмических изысков и глубокого знания языка не требуется, достаточно просто прочитать описание синтаксиса регвыров. И даже если никогда не слышал про регвыры, задача все равно легко решается. |
|||
|
||||
bscint13 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 13.2.2014 Репутация: нет Всего: нет |
В таком случае возникает вопрос, зачем данный форум создан вообще... и, если задача такая уж тривиальная, как Вы написали, в принципе подобное мог и написать только нуб, почему бы просто не помочь или это отнимает много усилий??? P.S. Ничего личного... просто ответ на Ваш пост и всего лишь... есть такое определение в психологии... как ответная реакция... И как думаете, если человек вообще не знаком с PHP, просто пытается как-нибудь разбираться, есть такой метод - метод тыка, но порой не всё понятно... а любому Шустрому или опытному это же секундное дело... Ну да ладно, как нибудь разберусь без особо знающих... Это сообщение отредактировал(а) bscint13 - 24.2.2014, 22:02 |
|||
|
||||
AVA12 |
|
||||
Шустрый Профиль Группа: Участник Сообщений: 135 Регистрация: 4.5.2008 Репутация: нет Всего: 4 |
Затем, чтобы помогать в случаях нетривиальных. А не для того, чтобы вести лентяев за ручку - "нажми на красную кнопку, поверни черный переключатель, а если включится аварийная сирена - отойди в сторону и сделай вид, что оно само".
Учить азбуке человека, который не хочет учиться - значит умножать энтропию и плодить халтурщиков, которых и так уж слишком много, особенно в вебе. |
||||
|
|||||
bscint13 |
|
||||||
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 13.2.2014 Репутация: нет Всего: нет |
Знаете Уважаемый, на -учить- нет просто времени, один человек не может знать и уметь всё, да это и не нужно... у каждого свои задачи и скажем так - своя миссия... Я не собираюсь изучать PHP и становится программистом, возможно и разве что в следующей жизни, а всё чем интересуюсь на данном форуме - делаю для себя, точнее для своего проекта... В разделе Общие вопросы, я уже писал, почему обращаюсь за помощью, в наше время очень тяжело найти надёжных и верных партнёров, после сотрудничества с несколькими программистами - сделал вывод что надёжнее всё же самому... И то, что я прошу помочь вовсе не значит, что не копался и не пытался разбираться, на всё нужно время, а его нет и уж конкуренцию Вам либо кому другому не собираюсь составлять... Итак, всё же о старом... ГЛАВНОМ... Вот данное правило, к сожалению его не проверял в работе... preg_match('/OK{1}\d{9}/i',$okpay) Оно будет соответсвовать данному номеру счёта, типа OK657456345??? Или нет? Да, понимаю, проще будет сказать, что нет... однако сейчас хотелось бы получить конструктивную помощь специалиста, а не пустозвона!!! |
||||||
|
|||||||
bscint13 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 13.2.2014 Репутация: нет Всего: нет |
preg_match('/OK{1}\d{9}/i',$okpay)
Проверил данное выражение в онлайн сервисе тестирования, даже не в одном... работает!!! Однако есть одно но... проходит как OK657456345 так и ok657456345, т.е. с маленькими буквами. А как сделать, чтобы всё же были только большие буквы OK, чтобы маленькие не проходили... и возможно ли так сделать в одной строке? Заранее благодарен Всем неравнодушным за помощь и совет!!! |
|||
|
||||
capitan |
|
||||
Опытный Профиль Группа: Участник Сообщений: 602 Регистрация: 27.2.2005 Где: Москва Репутация: 1 Всего: 13 |
Видимо не все прочитали. Советую прочитать про модификаторы. http://ru2.php.net/manual/ru/reference.pcr...n.modifiers.php Почитайте, что обозначает модификатор "i", который вы зачем то же поставили. И все станет понятно. Так же посмотрите как обозначается начало и конец строки.
P.S. Тема про регулярные выражения изучается ТОЛЬКО личным опытом. Сразу решение - это зло! Я бы сделал проверку так:
Странно. А что говорил сервис, если увеличить кол-во цифр? По идее, он просто вырезал нужно кол-во, а "лишнее" оставлял. Не выдавая ошибки. Т.к. в вашем выражении отсутствуют символы начала и конца строки. Это сообщение отредактировал(а) capitan - 25.2.2014, 14:34 |
||||
|
|||||
AVA12 |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 135 Регистрация: 4.5.2008 Репутация: нет Всего: 4 |
Людей, делающих операции на сердце, не будучи хирургами и не собираясь ими становиться, обычно сажают в тюрьму. Временами мне становится искренне жаль, что на "программистов" эта мера наказания не распространяется. |
|||
|
||||
bscint13 |
|
||||||||||
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 13.2.2014 Репутация: нет Всего: нет |
Слушайте AVA12!!! Купите очки или внимательно читайте... Себе я могу делать что угодно и как угодно, ни у кого не спрашивая на это разрешения... Вы наверное больше любитель языком работать, как вижу, так вот возьмите и засуньте его туда, где не светит СОЛНЦЕ... Понятно!!! Можете что-то добавить конструктивно, милости прошу, нет... НЕ ОТВЛЕКАЙТЕ!!! Добавлено @ 21:23
Вероятно модификатор "i" я поставил потому, что вместо preg_match была функция eregi, насколько правильно понимаю и помню, однако сейчас не могу утверждать, прошло достаточно долгое время... Я Вам очень благодарен и признателен за помощь и предоставление правила, соответствующего запросу данного поста... БЛАГОДАРЮ! Оно действительно работает... а касательно моего примера и Вашего вопроса, если добавить более 9 цифр - все цифры, что после 9 идут справа просто обрезает, да и по сути больше никак нельзя будет ввести в поле формы номера счёта... да, я конечно, забываю о том, что есть те, у кого чешутся руки и языки... как-нибудь со временем преодолеем и ЭТО!!! А вот что это за символ или переменная, приношу извинения за вопрос, конечно... $q - это что??? Заранее признателен за ответ. Вы совершенно правы, делать без изучения и сразу - плохо, я согласен, однако это вынужденная мера и делаю для себя, а не для дяди, Пети и так далее... у каждого свой Путь... Да и программистов сейчас не так много, вот таких как AVA12, кто больше языком - много, а на деле... ????? А Вам - всё же огромное спасибо! Да прибудет с Вами Сила! Удачи и успехов во всём! Это сообщение отредактировал(а) bscint13 - 25.2.2014, 21:31 |
||||||||||
|
|||||||||||
AVA12 |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 135 Регистрация: 4.5.2008 Репутация: нет Всего: 4 |
О, какая экспрессия!
Говоришь, себе делаешь? Взаимодействие с платежными системами? Ну-ну. |
|||
|
||||
bscint13 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 13.2.2014 Репутация: нет Всего: нет |
Чего ты хочешь или добиваешься? О себе... это был ответ на твой вопрос по хирургам... а вообще-то делаю свой проект для людей... Такой ответ устраивает!!! Будут время и возможности я обязательно займусь тщательным изучением языка, мне он нравится... время покажет... Кстати, был бы признателен за рекомендацию практичного и доступно написанного руководства, самоучителя по PHP и регулярным выражениям для начинающих, собственно для НУБов... я даже и пытаться не буду опровергать, что я НУБ, мне от этого ни холодно, ни горячо... Я пересмотрел не мало подобных руководств, слишком заумно написаны, много воды... Это сообщение отредактировал(а) bscint13 - 25.2.2014, 22:38 |
|||
|
||||
capitan |
|
|||
Опытный Профиль Группа: Участник Сообщений: 602 Регистрация: 27.2.2005 Где: Москва Репутация: 1 Всего: 13 |
Почитайте первоисточник http://php.net/manual/ru/function.preg-match.php Это не обязательный параметр. Массив, где будут все результаты поиска. |
|||
|
||||
bscint13 |
|
||||
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 13.2.2014 Репутация: нет Всего: нет |
Благодарю Вас за рекомендации и оказанную помощь в решении интересующего вопроса!!! |
||||
|
|||||
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Тексты | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |