Merhaba,
Elimde sıralı string biçiminde bir dizge var. Bu dizge "," işaretiyle ayrılmış. Bu dizi içinde belirlediğim bir stringin karşılığına gelen stringi almak istiyorum.
Örnek-1:
kurbaga, seker, uygun, ali, kurbağa, şeker, uygun, ali
Örnek-2:
sonuc, ceviz, sonuç, ceviz
Örneğin, ikinci örnekteki sonuc'a denk gelen sonuç'u almak için nasıl bir fonksiyon kullanabilirim. Virgülleri explode ettim ama sonrasında nasıl yapabilirim bilemedim. Yardımınız için şimdiden teşekkür ederim.
virgüle göre 1. sırada olan kurbaga için , virgüle göre 5. sırada olan kurbağa'yı nasıl alabilirim?
yalnız Türkçe karakterden ziyade tümü aynı karakter de olabiliyor:
ali, veli, deli, ali, veli, deli
şeklinde...
Zorlu Bir Durum: String Dizisi İçinden Uygun Sıradakini Alma
7
●412
- 17-04-2014, 21:04:24sorunuzu tam anlamadım ama 1. dizide bulunadı 2. dizede bulmak istiyorsanız
http://tr2.php.net/array_search
array_search("ceviz",$array2)
derseniz ikinci dizideki konumu gelecektir - 17-04-2014, 21:09:48soruyu tam olarak anlayamadım hocam halenBND adlı üyeden alıntı: mesajı görüntüle
1. dizedeki valuenin 2. dizide keyini mi almak istiyorsunuz?
1. dizede türkçe ise aranılanda türkçe değilse türkçe karakterleri değiştirerek arayabilrisiniz.
ama seçilen türkçe karaktersiz aranan türkçe karakterli ise tüm dizeyi türkce karakterden arındırdıktan sonra aramalısınız - 17-04-2014, 21:23:31Üyeliği durdurulduşöyle:
şeker, güzel, aşk, seker, guzel, ask
şeklinde bir string değerim var. Bu değerde kalın olanlar ilk etapta eklenen stringler. Eğik olanlar kalın olanlara göre sırasıyla eklenmiş değerler. Örneğin 1. sıradaki seker'e denk gelen 4. sıradaki şeker stringi. Ben bu seker stringiyle bağlantılı olan şeker stringini almak istiyorum.
--R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 20:17:17 -->-> Daha önceki mesaj 20:14:18 --
Türkçe karakterlerden arındırma söz konusu olsa bile şöyle bir dizide yazacağım fonksiyon çakılacak:
seker, ahmet, sekerci, şeker, ahmet, şekerci
seker aramasında şekerci için de işlemi yapacak.
--R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 20:21:10 -->-> Daha önceki mesaj 20:17:17 --
tartışırken ışıklar yanmaya başladı. virgül sayısının 1 fazlasının yarısını bulup tüm stringi bu yarıya böler ve elimdeki iki string içinde her $x[$i] için $y[$i] alabilirim.
--R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 20:23:31 -->-> Daha önceki mesaj 20:21:10 --
Mezitli33 ilgin için teşekkür ederim. Ben şunu bir deneyeyim. - 17-04-2014, 21:25:21bende çözümü kod olarak yazıyordum siz bulmuşsnuz hemen hemenBND adlı üyeden alıntı: mesajı görüntüle
bir önceki mesajda var önemli değil kolay gelsin
- 17-04-2014, 22:16:30Üyeliği durdurulduSonunda hallettim. Belki birinin işine yarar (google'da İngilizce sayfalarda da yoktu):
mb_internal_encoding("UTF-8");
$etler=$row_etiketal['tags'].',';
$sayi=substr_count($etler,',');
// $etler şu yapıda: 'şemsiye,ali,şeker, uğraş, semsiye,ali,seker,ugras,';
// $buetiket urlden alınıyor. türkçe karakter içermiyor. örneğin: semsiye
$lem=explode(',',$etler);
$z='';
$imi=0;
while ($imi<=ceil($sayi/2)-1) {
$z=$z.trim($lem[$imi]);
$imi++;
}
$t='';
$imi=ceil($sayi/2);
while ($imi<=$sayi) {
$t=$t.trim($lem[$imi]);
$imi++;
}
echo $buetiket;
echo '<h1>'.$z.'</h1>';
echo '<h1>'.$t.'</h1>';
$xc=strpos($z,$buetiket);
echo '<h1>'.$xc.'</h1>';
$xv=strlen($buetiket);
$son=mb_substr($t,$xc,$xv);
echo $son;
//mb_substr'te Türkçe karakterler için kullanıldı. Sayfa başına mb_internal_encoding("UTF-8"); eklenmeli.