[Ajuda] sscanf explode - 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: Português/Portuguese (
https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] sscanf explode (
/showthread.php?tid=585267)
sscanf explode -
VeNuZ_ - 12.08.2015
Boas, gostava de saber se o sscanf pode ser usado para fazer a mesma funзгo
explode (que nгo existe em pawn).
Re: sscanf explode -
bruxo00 - 12.08.2015
Isso й para "dividir" uma string?
Tente isto:
PHP Code:
public split(const strsrc[], strdest[][], delimiter)
{
new i, li;
new aNum;
new len;
while(i <= strlen(strsrc)){
if(strsrc[i]==delimiter || i==strlen(strsrc)){
len = strmid(strdest[aNum], strsrc, li, i, 128);
strdest[aNum][len] = 0;
li = i+1;
aNum++;
}
i++;
}
return 1;
}
Re: sscanf explode -
Dayvison_ - 12.08.2015
Pode, porem o uso nao e o mesmo pois sscanf retorna apenas true e false
Re: sscanf explode -
VeNuZ_ - 12.08.2015
Quote:
Originally Posted by bruxo00
Isso й para "dividir" uma string?
Tente isto:
PHP Code:
public split(const strsrc[], strdest[][], delimiter)
{
new i, li;
new aNum;
new len;
while(i <= strlen(strsrc)){
if(strsrc[i]==delimiter || i==strlen(strsrc)){
len = strmid(strdest[aNum], strsrc, li, i, 128);
strdest[aNum][len] = 0;
li = i+1;
aNum++;
}
i++;
}
return 1;
}
|
Preciso disto para salvar ids de armas na mesma tabela, apenas tendo um "#" a separar... Por isso mencionei no explode do php.
Quote:
Originally Posted by Day_
Pode, porem o uso nao e o mesmo pois sscanf retorna apenas true e false
|
Segundo este
tуpico vocк estб incorreto.
Re: sscanf explode -
PT - 12.08.2015
Sim da, da uma olhada no p<|> algo do gйnero assim, nгo tou num PC e muito menos em casa so ao fim de semana desculpa nгo ser muito especifico agora
Re: sscanf explode -
VeNuZ_ - 12.08.2015
Obrigado PT.
Cуdigo final:
PHP Code:
new var[7];
sscanf("1#2#3#4#5#10#20", "p<#>a<i>[7]", var);
for(new i; i < 7; ++i)
printf("%i", var[i]);
print:
Code:
[13:20:10] 1
[13:20:10] 2
[13:20:10] 3
[13:20:10] 4
[13:20:10] 5
[13:20:10] 10
[13:20:10] 20