![]() |
#13 |
Участник
|
Цитата:
Сообщение от Zuzaz
![]() Как часто случается, это задание недостаточно формализовано. Без уточнения ряда вопросов по формату номера предлагать варианты бесполезно:
1) вначале всегда идут буквы ? их всегда две, как в примере, или может быть любое число? 2) между начальным и конечным набором букв цифры всегда идут со слешем, или могут быть только цифры ? Могут ли вместо слеша быть и другие знаки, например тире или точка? 3) количество знаков между первым и конечным набором букв всегда одинаково, или может быть любым? 3) в конечном наборе буква всегда одна, или их может быть две и больше ? 4) в конечном наборе всегда идут буквы и потом цифры, или могут быть другие варианты (например, только буквы;буквы, цифры и снова буквы) ? Сколько цифр может быть после последней буквы ? 5) и наконец ключевой вопрос: зачем нужно такое преобразование, какая исходная постановка задачи? Может быть, исходная задача решается другим, более простым способом ? Или может быть, исходная задача такова, что и ваш способ с преобразованием номера её не решит ? Если подходить формально, решая задачу именно так, как она вами записана, то это так: X++: S2 = substr(S1,3,9) ![]() 2. Далее идут цифры (тоже непонятно сколько ) разделение слеш и ещё несколько цифр... вот в первый заход их нужно получить. 3. Потом идёт буква Р после неё цифры. Второе значение у меня должно как раз ему равнятся... то есть если первоначально было ППРРВ12345/45Р5, то должно получится два значения: первое 12345/45 и второе 5 |
|