SA-MP Forums Archive
strdel - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Русский/Russian (https://sampforum.blast.hk/forumdisplay.php?fid=32)
+---- Thread: strdel (/showthread.php?tid=439713)



strdel - CamperGTA - 26.05.2013

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



Re: strdel - MacMailler - 26.05.2013

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); 



Re: strdel - CamperGTA - 26.05.2013

Спасибо.
Quote:

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




Re: strdel - CamperGTA - 26.05.2013

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


Re: strdel - MacMailler - 26.05.2013

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



Re: strdel - AirKite - 28.05.2013

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

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

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


Re: strdel - CamperGTA - 29.05.2013

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

и


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

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


Re: strdel - -Stranger- - 29.05.2013

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


Re: strdel - Vinnyy - 30.05.2013

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