Stringden harf almak
Moderatör: Moderatörler
-
Konu Sahibi - Mesajlar: 155
- Kayıt: Cum Ağu 13, 2021 8:56 pm
- Konum: Azerbeycan
- Server Ip/DNS: 147.185.221.16:26504
Stringden harf almak
Selam aleykum arkadaşlar. Her hangi bir stringden bir harfin yeri nasıl bulunur? Örnek : "selam aleykum" yazisindan ben "s" nin indexini(olduğu konumu) bulmak istiyorum. Bir yardim eden olursa sevinirim(yardimci ola bilecek kodlar: strfind(), contain() ben bunlari denedim yapamadim).
Link: | |
Linklerini gizle |
Stringden harf almak
Contain ile o harfin yerini alman zor. En basiti stringin uzunluğunu alıp her bir karakteri için istediğin harf mi diye sorgu yapman olacaktır.
Link: | |
Linklerini gizle |
-
Konu Sahibi - Mesajlar: 155
- Kayıt: Cum Ağu 13, 2021 8:56 pm
- Konum: Azerbeycan
- Server Ip/DNS: 147.185.221.16:26504
Stringden harf almak
Taha Demirbaş yazdı: ↑Prş Ara 29, 2022 9:19 pm Bir for döngüsüyle yapmaya çalıştım olmadı hep böyle oluyor
Kod yazımı :
new metin[200] = "selam aleykum"
for (new i = 0; i < strlen(metin); i++)
{
client_print(0, print_chat, "%s", metin[ i ])
if (contain(metin[ i ], "y"))
// stringde "y" harfi varsa burası çalışır
}
Kod çıktısı :
For döngüsünden sonra metin deyişenin aldığı deyerler şöyle oluyor:
selam aleykum
selam aleyku
selam aleyk
selam aley
selam ale
selam al
selam a
selam //boşluk var
selam
sela
sel
se
s
Yukarda olduğu gibi yapiyor ve for döngüsünün içindeki if (şart) ödenmiyor. Bir el atin lütfen
Link: | |
Linklerini gizle |
-
- Mesajlar: 257
- Kayıt: Sal Oca 11, 2022 11:22 pm
- Konum: İstanbul
- Clan İsmi: We Are Gamer
Stringden harf almak
Sorguyu böyle güncelleyin:
Kod: Tümünü seç
if(equal(metin[i], "y"))
Link: | |
Linklerini gizle |
-
Konu Sahibi - Mesajlar: 155
- Kayıt: Cum Ağu 13, 2021 8:56 pm
- Konum: Azerbeycan
- Server Ip/DNS: 147.185.221.16:26504
Stringden harf almak
Emrullah AKTAŞ yazdı: ↑Prş Ara 29, 2022 10:02 pm Abi atdiğim resime bir bakarmisin? Işte dongu sirasinda harfleri teker teker gostermiyor. (Normalde böyle olur : "selam" ->> "s", "e", "l", "a", "m" burda ise olmuyor nedense)
Resime bakmayı unutmayin : https://img.webme.com/pic/g/gausywuay56 ... 233915.jpg
Link: | |
Linklerini gizle |
-
Konu Sahibi - Mesajlar: 155
- Kayıt: Cum Ağu 13, 2021 8:56 pm
- Konum: Azerbeycan
- Server Ip/DNS: 147.185.221.16:26504
-
Konu Sahibi - Mesajlar: 155
- Kayıt: Cum Ağu 13, 2021 8:56 pm
- Konum: Azerbeycan
- Server Ip/DNS: 147.185.221.16:26504
Stringden harf almak
Yapmak istediyim aslinda bu Renkli Yazi
Eyer msg deyiseninde !t varsa mavi, !y varsa kirmizi, !d varsa boz yazicak
zahmet olmazsa bu kodlara bir bakin
Eyer msg deyiseninde !t varsa mavi, !y varsa kirmizi, !d varsa boz yazicak
Kod: Tümünü seç
// Stock: ZE Color Print
stock ze_color_p(index, const text[], any:...)
{
new const teams[][] = {"", "TERRORIST", "CT", "SPECTATOR"}
new msg[128], main_team, team[100]
vformat(msg, charsmax(msg), text, 3)
/*
// Str Find fonksiyonu calismadi
if (strfind(msg, "!t")
team = "CT"
else if (strfind(msg, "!t")
team = "TERRORIST"
else if (strfind(msg, "!t")
team = ""
// Donguyle de calismadi
for (new i = 0; i < strlen(msg); i++)
{
client_print(0, print_chat, "%s", msg[i])
if (equal(msg[i], "!") && equal(msg[i + 1], "y"))
{
team = "TERRORIST"
client_print(0, print_chat, "kirmizi")
}
}
*/
replace_all(msg, charsmax(msg), "!g", "^x04") // yesil
replace_all(msg, charsmax(msg), "!n", "^x01") // normal
replace_all(msg, charsmax(msg), "!t", "^x03") // mavi
replace_all(msg, charsmax(msg), "!y", "^x03") // kirmizi
replace_all(msg, charsmax(msg), "!d", "^x03") // boz
if (index == 0)
{
for (new id = 1; id <= get_maxplayers(); id++)
{
if (!is_user_connected(id))
continue
main_team = get_user_team(id)
message_begin(MSG_ONE, get_user_msgid("TeamInfo"), _, id)
write_byte(id)
write_string(team)
message_end()
message_begin(MSG_ONE, get_user_msgid("SayText"), _, id)
write_byte(id)
write_string(msg)
message_end()
message_begin(MSG_ONE, get_user_msgid("TeamInfo"), _, id)
write_byte(id)
write_string(teams[main_team])
message_end()
}
}
else
{
main_team = get_user_team(index)
message_begin(MSG_ONE, get_user_msgid("TeamInfo"), _, index)
write_byte(index)
write_string(team)
message_end()
message_begin(MSG_ONE, get_user_msgid("SayText"), _, index)
write_byte(index)
write_string(msg)
message_end()
message_begin(MSG_ONE, get_user_msgid("TeamInfo"), _, index)
write_byte(index)
write_string(teams[main_team])
message_end()
}
}
Link: | |
Linklerini gizle |
-
- Mesajlar: 257
- Kayıt: Sal Oca 11, 2022 11:22 pm
- Konum: İstanbul
- Clan İsmi: We Are Gamer
-
- Mesajlar: 13
- Kayıt: Pzr Nis 17, 2022 6:54 pm
Stringden harf almak
"Containi" yi bunun için kullanabilirsiniz gibi gözüküyor. Açıklaması şu şekilde;HakimKILLER44 yazdı: ↑Prş Ara 29, 2022 9:13 pm Selam aleykum arkadaşlar. Her hangi bir stringden bir harfin yeri nasıl bulunur? Örnek : "selam aleykum" yazisindan ben "s" nin indexini(olduğu konumu) bulmak istiyorum. Bir yardim eden olursa sevinirim(yardimci ola bilecek kodlar: strfind(), contain() ben bunlari denedim yapamadim).
Kod: Tümünü seç
-1 on failure (no match found).
Any other value indicates a position in the string where the match starts.
Link: | |
Linklerini gizle |
-
Konu Sahibi - Mesajlar: 155
- Kayıt: Cum Ağu 13, 2021 8:56 pm
- Konum: Azerbeycan
- Server Ip/DNS: 147.185.221.16:26504
Stringden harf almak
Schwartzkopf yazdı: ↑Cum Ara 30, 2022 3:31 pm acaba bir ornek vere bilirmisin? (galiba senin dediyin bu)Kod: Tümünü seç
if (contain(msg, "!t"))// dogruysa calisir (mavi yazar) team = "CT" if (contain(msg, "!y"))// dogruysa calisir (kirmizi yazar) team = "TERRORIST"
ben soyle yapiyorum :bunlari yazdikdan sonra her ikiside calisiyor. bunu duzeletemiyorum malesef. lutfen orneklerle cevap verinKod: Tümünü seç
new msg[200] = "!tBu mavi yazidir" if (contain(msg, "!t")) // burasi calismalidir team = "CT" if (contain(msg, "!y")) // burasi calismamalidir (msg deyiseninde !y harfi yok) team = "TERRORIST"
Link: | |
Linklerini gizle |