UNcase sensitive strstr – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

UNcase sensitive strstr – C / C++ – Fórum – Programujte.comUNcase sensitive strstr – C / C++ – Fórum – Programujte.com

 

p3cq56
~ Anonymní uživatel
4 příspěvky
14. 4. 2007   #1
-
0
-

nevite nekdo prosim jak v tomhle kodu zaridit aby to nerozlisovalo bitch a Bitch a biTch... ale aby to porste nekoukalo na velikost pismen? proste nekdo vleze do chatu a posle zpravu (szString) a ono to checkne jestli tam je neco z tech slov a pokud ano vrati to jenom LTFALSE a tu zpravu to skartuje, ale ted mi to funguje PRESNE a JEN na ty slova tak jak jsou napsany v kodu s malyma pismenama :( a vypisovat vsechny moznosti kombinace by bya prace na tydny :(


diky

if(m_bSwearningFilter==LTTRUE)
{
const char *nastywords[] = { "bitch", "arse", "queer", "cunt", "scruber", "fuck", "whore", "slag", "slut", "shit", "bastard", "asshole", "shithole", NULL };
uint32 i = 0;
while (nastywords[i] != NULL)
{
if (strstr(szString, nastywords[i]))
{
return LTFALSE;
}
i++;
}
}

Nahlásit jako SPAM
IP: ...–
janc10
Návštěvník
14. 4. 2007   #2
-
0
-

vsetky slova preved na velke, aj tie ktore mas v tom poli, a aj tie ktore si nacital od uzivatela. a potom uz len porovnaj.
pripadne aj naopak - slvoa nacitane zo vstupu od uzivatela preved na male a porovnaj.

cize napr. uzivatel zada slovo ShiT, prevedies to na SHIT a porovnas :)

Nahlásit jako SPAM
IP: ...–
p3cq56
~ Anonymní uživatel
4 příspěvky
15. 4. 2007   #3
-
0
-

no jasne :) ale jak :) ja jsem relativni zacatecnik :)

nebyl by na to nekde nejaky navod nebo tak neco, pekne prosim?

Nahlásit jako SPAM
IP: ...–
Radoslav Pala0
Super člen
15. 4. 2007   #4
-
0
-

To p3cq56: pouzi funkciu strToLower alebo strToUpper

Nahlásit jako SPAM
IP: ...–
p3cq56
~ Anonymní uživatel
4 příspěvky
16. 4. 2007   #5
-
0
-

Diky pokusim se oto najit si otom nejaky info a dam vedet :)

dik

Nahlásit jako SPAM
IP: ...–
p3cq56
~ Anonymní uživatel
4 příspěvky
18. 4. 2007   #6
-
0
-

tak jsem to nakonec vyresil funkci:

char * StringToUpperCase(char * zeile)
{
char * temp;
int i;
int p = strlen(zeile);
temp = (char *) malloc(p);
for (i=0; zeile[i]!=0 && i<256; i++)
if (zeile[i]>='a' && zeile[i]<='z')
temp[i]=(char) zeile[i]-32; else temp[i]=zeile[i];
temp[i]=0;
return temp;
}



a volanim:

if(m_bSwearningFilter==LTTRUE)
{
const char *nastywords[] = { "BITCH", "ARSE", "QUEER", "CUNT", "SCRUBER", "FUCK", "WHORE", "SLAG", "SLUT", "SHIT", "ASSHOLE", "SHITHOLE", NULL };
uint32 i = 0;
while (nastywords[i] != NULL)
{
if (strstr(StringToUpperCase(szString), nastywords[i]))
{
char szSwearningMsg[192];
sprintf(szSwearningMsg, "Swearning is NOT accepted on this server.");
HMESSAGEWRITE hMessage = g_pLTServer->StartMessage(m_ClientData[nIndex].m_hClient, MID_MPMGR_PRIVATE_MESSAGE);
hMessage->WriteDWord(0);
hMessage->WriteString(szSwearningMsg);
g_pLTServer->EndMessage(hMessage);

return LTFALSE;
}
i++;
}
}














diky za napad :)

Nahlásit jako SPAM
IP: ...–
21. 4. 2007   #7
-
0
-

mnochodem na to existuje funkce stricmp; vraci 0, pokud jsou retezce stejne

Nahlásit jako SPAM
IP: ...–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 51 hostů

Podobná vlákna

Funkce strstr() — založil Sprinter

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý