strdel
#1

Здравствуйте.
Помогите сделать функцию, которая будет удалять текст между двумя одинаковыми символами.
Пример: вводишь - (юпрст)ывапр ; вывод - ывапр.
Пробывал делать сам, но не получилось, мой код:
PHP код:
    for(new 0strlen(inputtext); i++)
    {
        if(
inputtext[i]=='(') for(new s=i+1s<strlen(inputtext); s++) if(inputtext[s]==')'strdel(inputtext,i,s);
    } 
Reply
#2

PHP код:
stock strdel_ex(dest[], l[], r[]) {
    new 
lpos strfind(destltrue);
    if(
lpos != -1) {
        new 
rpos strfind(destrtruelpos);
        if(
rpos != -1) {
            
strdel(destlposrpos+1);
            return 
1;
        }
    }
    return 
0;

Пример:
PHP код:
    new str[] = "(юпрст)ывапр";
    
strdel_ex(str"("")");
    print(
str); 
Reply
#3

Спасибо.
Quote:

new str[] = "(юпрст)ывапр";
strcut(str, "(", ")"); //тут может быть strdel_ex?
print(str);

Reply
#4

Затестил, работает, но если сделать так:
(юпрст)ывапр(юпрст)ывапр, то выводит: ывапр(юпрст)ывапр
можно как-нибудь исправить?
Reply
#5

Quote:
Originally Posted by CamperGTA
Посмотреть сообщение
Затестил, работает, но если сделать так:
(юпрст)ывапр(юпрст)ывапр, то выводит: ывапр(юпрст)ывапр
можно как-нибудь исправить?
Так попробуйте
PHP код:
while(strdel_ex(str"("")")) {} 
Reply
#6

Я один не вижу логики в
Quote:
Originally Posted by CamperGTA
Посмотреть сообщение
будет удалять текст между двумя одинаковыми символами.
и

Quote:
Originally Posted by CamperGTA
Посмотреть сообщение
Пример: вводишь - (юпрст)ывапр ; вывод - ывапр.
Одинаковые символы в тексте "(юпрст)ывапр" вижу как то так: "(юпрст)ывапр", т.е. исходя из описания следует сделать вывод, что текст должен быть удалён между первой п и второй п или же первой р и второй р.

Принципиально не вижу смысла помогать автору в данном вопросе. Это форум помощи по samp\pawn etc., а не сообщество коррекции неадекватных формулировок и мыслей.
Reply
#7

Quote:
Originally Posted by AirKite
Посмотреть сообщение
Я один не вижу логики в

и


Одинаковые символы в тексте "(юпрст)ывапр" вижу как то так: "(юпрст)ывапр", т.е. исходя из описания следует сделать вывод, что текст должен быть удалён между первой п и второй п или же первой р и второй р.

Принципиально не вижу смысла помогать автору в данном вопросе. Это форум помощи по samp\pawn etc., а не сообщество коррекции неадекватных формулировок и мыслей.
Код удаляет текст между указанными символами.
Reply
#8

AirKite, вот все поняли вопрос, одному Вам захотелось по умничать?
Reply
#9

не вам, а тебе.
а если по теме, то лучше написать всё вручную.
будет побыстрее, чем через гору стрфайндов и стрделов.
За линию спокойно можно сделать.
Reply


Forum Jump:


Users browsing this thread: 6 Guest(s)