strdel -
CamperGTA - 26.05.2013
Здравствуйте.
Помогите сделать функцию, которая будет удалять текст между двумя одинаковыми символами.
Пример: вводишь - (юпрст)ывапр ; вывод - ывапр.
Пробывал делать сам, но не получилось, мой код:
PHP код:
for(new i = 0; i < strlen(inputtext); i++)
{
if(inputtext[i]=='(') for(new s=i+1; s<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(dest, l, true);
if(lpos != -1) {
new rpos = strfind(dest, r, true, lpos);
if(rpos != -1) {
strdel(dest, lpos, rpos+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
не вам, а тебе.
а если по теме, то лучше написать всё вручную.
будет побыстрее, чем через гору стрфайндов и стрделов.
За линию спокойно можно сделать.