Ékezetes szöveg ékezet nélküli szöveggé konvertálása

Indította Wiliam Levy, 2014. április 06. - 21:17:00

Előző téma - Következő téma

Wiliam Levy

Idézetet írta: ZSOLTI99 date=1396812695\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47589\" data-ipsquote-contentclass=\"forums_TopicEzt hogy érted?...
Lehet hülye vagyok nem tudom értelmezni vagy nem tudom .....akkor ne írj bele ékezetet
 
De tegyük fell hogy két dologra kell... Mondjuk az egyik az, hogy kiirja egy játékosnak, a másik meg hogy egy ékezetet nem elfogadó valamibe mentse...

Dfoglalo

Elõre meg kell adni, hogy melyik betû helyére mi kerüljön (pl, az á helyére a, s ez elõre megadva - rímelt :D), majd csekkolni és cserélni az egyes betûket.

Wiliam Levy

#17
Idézetet írta: Dfoglalo date=1396813979\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47589\" data-ipsquote-contentclass=\"forums_TopicElõre meg kell adni, hogy melyik betû helyére mi kerüljön (pl, az á helyére a, s ez elõre megadva - rímelt :D), majd csekkolni és cserélni az egyes betûket.
 
Õõõõõ nem rímelt :DDDDD Másrészt, léééégyszi segits benne :S

Dupla hozzászólás automatikusan összefûzve. ( 2014. április 07. - 16:04:10 )

Valakiiii :S

KovaNovik

Ezt most írtam telefonon, szóval a szokásos módon tuti lesz benne hiba. Valószínûleg valami fatális, párbetûs elírás lesz, de nincs alkalm tesztelni (tényleg). Mindenesetre elküldöm, hadd okuljon a nép. ;D
 

//Függvény
stock EkMenVal(karil[])
{
new cserkar[][][] =
{
{\"Á\", \"A\", \"á\", \"a\"},
{\"É\", \"E\", \"é\", \"e\"},
{\"Í\", \"I\", \"í\", \"i\"},
{\"Ó\", \"O\", \"ó\", \"o\"},
{\"Ú\", \"U\", \"ú\", \"u\"},
{\"Ö\", \"O\", \"ö\", \"o\"},
{\"Ü\", \"U\", \"ü\", \"u\"},
{\"Õ\", \"O\", \"õ\", \"o\"},
{\"Û\", \"U\", \"û\", \"u\"}
};
for(new x = 0; x < sizeof(cserkar), x++)
{
if(strfind(karil, cserkar
  • , true) == strfind(karil, cserkar
  • [2], true) == -1) continue;
for(new y = 0; y < sizeof(karil[]), y++)
{
   if(strfind(karil, cserkar
  • , true) != -1) karil[y] = cserkar
  • [1]
   else if(strfind(karil, cserkar
  • [2], true) != -1) karil[y] = cserkar
  • [3]
}
}
return karil;
}
//Teszt parancs:
CMD:ekmenval(playerid)
{
new szo[32], uzi[128];
format(szo, sizeof(szo), \"árvíztûrõ-tükörfúrógép\");
format(uzi, sizeof(szo), \"A(z) \"%s\" szó ékezetmentes változata: \"%s\", szo, EkMenVal(szo));
SendClientMessage(playerid, 0xFFFFFF, uzi);
return 1;
}

 
Sok szerencsét, további jó scriptelést! :thumbsup:

Wiliam Levy

#19
stock EkMenVal(karil[])
{
        new cserkar[][][] =
        {
        {\"Á\", \"A\", \"á\", \"a\"},
        {\"É\", \"E\", \"é\", \"e\"},
        {\"Í\", \"I\", \"í\", \"i\"},
        {\"Ó\", \"O\", \"ó\", \"o\"},
        {\"Ú\", \"U\", \"ú\", \"u\"},
        {\"Ö\", \"O\", \"ö\", \"o\"},
        {\"Ü\", \"U\", \"ü\", \"u\"},
        {\"Õ\", \"O\", \"õ\", \"o\"},
        {\"Û\", \"U\", \"û\", \"u\"}
        };
        for(new s = 0; s < sizeof(cserkar), s++;)
        {
                if(strfind(karil, cserkar
  • , true) == strfind(karil, cserkar[2], true) == -1) continue;//774es sor
                for(new y = 0; y < sizeof(karil[]), y++;)
                {
                        if(strfind(karil, cserkar
  • , true) != -1)
            {
            karil[y] = cserkar[1];//779es sor
            }
                        else if(strfind(karil, cserkar[2], true) != -1)
            {
            karil[y] = cserkar[3];//783as sor
            }
                }
        }
        return karil;
}

 
Hibák:
C:\\játékok\\sampserver\\filterscripts\\lstkr.pwn(774) : warning 213: tag mismatch
C:\\játékok\\sampserver\\filterscripts\\lstkr.pwn(779) : error 006: must be assigned to an array
C:\\játékok\\sampserver\\filterscripts\\lstkr.pwn(783) : error 006: must be assigned to an array
[/quote]

KovaNovik

#20
Pawn kódot használj, légy szíves.
 
[ c o d e = p a w n ] [ / c o d e]

 
[mod]Köszi, hogy szóltál, ezzel semmi baj, de azért hagyd meg kérlek ezt a feladatot a moderátorok számára.[/mod]

Wiliam Levy

Idézetet írta: KovaNovik date=1396881589\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47589\" data-ipsquote-contentclass=\"forums_TopicPawn kódot használj, légy szíves.
 
[ c o d e = p a w n ] [ / c o d e]

 

Javítva!

KovaNovik

#22
A kódod kicsit más, mint az enyém..
 
if(strfind(karil, cserkar
  • , true) == -1 && strfind(karil, cserkar[2], true) == -1) continue;//774es sor

Így?

Wiliam Levy

Ja mert nem tetszett a pawnonak a rengeteg hiányzó \'{\' \'}\' és \';\'

KovaNovik

Igen, bocs, lehagytam egy pontosvesszõt. Az ifeknél mennie kell {} nélkül is, ha csak egy funkció van utána. :) Ha javítod az általam írt sort, akkor milyen hibákat ír?

Wiliam Levy

#25
Idézetet írta: KovaNovik date=1396882794\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47589\" data-ipsquote-contentclass=\"forums_TopicIgen, bocs, lehagytam egy pontosvesszõt. Az ifeknél mennie kell {} nélkül is, ha csak egy funkció van utána. :) Ha javítod az általam írt sort, akkor milyen hibákat ír?
 
nem tudom mert mennem kellett
Igy nrm vok pawnokozelbe

Dupla hozzászólás automatikusan összefûzve. ( 2014. április 07. - 17:57:10 )

Igen, bocs, lehagytam egy pontosvesszõt. Az ifeknél mennie kell {} nélkül is, ha csak egy funkció van utána. :) Ha javítod az általam írt sort, akkor milyen hibákat ír?[/quote]
Jelenleg erre a két sorra ír hibát:
 

                      for(new y = 0; y < sizeof(karil[]), y++;)//776
                      {//777
                           if(strfind(karil, cserkar
  • , true) != -1) karil = cserkar[1]//778
                           else if(strfind(karil, cserkar[2], true) != -1) karil = cserkar[3]//779
                      }//780

 
hibák:
 

C:\\játékok\\sampserver\\filterscripts\\lstkr.pwn(778 -- 779) : error 006: must be assigned to an array
C:\\játékok\\sampserver\\filterscripts\\lstkr.pwn(779 -- 780) : error 006: must be assigned to an array
 
[/quote]