İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

İki karakter arasını silmek

Ozcan

0
İyinet Üyesi
Katılım
12 Mayıs 2007
Mesajlar
3,749
Reaction score
59
Konum
Antalya
[ ]



yani bu kodu silmek istiyorum.

şu iki karakteri ve arasındaki tüm karakterleri silmek istiyorum bunu nasıl yapabilirim.

1. [ den 2. ] e kadar olan bütün karakterleri.
 

baldor

0
İyinet Üyesi
Katılım
24 Şubat 2003
Mesajlar
660
Reaction score
0
Konum
Bi Bilsem :)
<?php
$kodlar = "aaaa
bbbb";

// string içinde aradığımız bölümün kaçıncı karakter ile başlayıp bittiğini buluyoruz
$bas = strpos($kodlar, "[img");
$son = strpos($kodlar, "/img]") + 5; // /img] 5 karakter olduğu için +5

// bu aradaki string ifadeyi siliyoruz
$sonuc = substr_replace($kodlar, "", $bas, ($son - $bas));

echo "$sonuc";

?>

çıktı: aaaabbbb

umarım işinize yarar, kolay gelsin
 

Ozcan

0
İyinet Üyesi
Katılım
12 Mayıs 2007
Mesajlar
3,749
Reaction score
59
Konum
Antalya
Sağol dostum biraz uğraştırcak ama işimi görür.

SMF foruma VBSEO nun aynısını yapıyorumda bir kaç yerde takılıyorum o yüzden sordum.

http://www.kadinin.com/sezaryen-dogumdan-sonra-anne-evde-neler-yasar-t142.0.html

[uzmantv=450,404]C0VPPVgC-OY[/uzmantv] bu nin gibi kodlar var. Yani her eklediğim eklenti kodu için tek tek uğraşmak istemedim. VBSEO olan sitelerde konu başlıklarını Keywords a almış onları bende keywords a aldırdım. Fakat konudaki ilk yazıyı description a aldırmış vbseoda bende onu yaptım fakat <br><td> gibi kodları temizlemem gerekti onu $a=strip_tags($a); şu şekilde hallettim fakat kendi eklediğim uzmantv url ekle resim ekle gibi modların düzeltmek için istemiştim. Şimdilik uzmantv için denedim ve çalışıyor. 2. ] a kadar almasını istememin sebebi her bir mod için tek tek uğraşmak istememem.Teşekkür ederim.

Siteyi yeni açtım ondan pek bir şey yok. www.kadinin.com
 

metadige

0
İyinet Üyesi
Katılım
23 Aralık 2005
Mesajlar
354
Reaction score
4
PHP:
<?php
$yazi = preg_replace('/(\[(.*?)\])(.*?)(\[(.*?)\])/',' ',$yazi);
echo $yazi;
?>
 

baldor

0
İyinet Üyesi
Katılım
24 Şubat 2003
Mesajlar
660
Reaction score
0
Konum
Bi Bilsem :)
bu çözüm daha iyi olmuş :)
bende şu karışık işaretlerin dilinden anlasam ne olurdu ya :(
 

Ozcan

0
İyinet Üyesi
Katılım
12 Mayıs 2007
Mesajlar
3,749
Reaction score
59
Konum
Antalya
strip_tags ile dene birde.

hocam onu kullanıyorum zaten.

@metadige çok teşekkür ederim. Yazının kodunu çıkarmışın hani ingilizceye çevirirlerde sağol sende phpye çevirmişin :D

[ bu işareti görünce 2nci ] bu işarete kadar olan yerleri alta = '/(\[(.*?)\])(.*?)(\[(.*?)\])/'

SMF çiler içinde Kodu yazayım.

index.template.php de.

Kod:
// The main sub template above the content.

function template_main_above()

{

	global $context, $settings, $options, $scripturl, $txt, $modSettings;

Bunun altına ekleyin.

Kod:
		$stop_words=  array(" ben "," sen "," hakkında "," bir "," nerede "," ki "," kim "," nerede "," ve "," com "," de "," en "," için "," tarafından "," nasıl "," ne "," içinde "," ile "," www ","!",".","?","=","-");
        $keywords_ = str_replace($stop_words," ",$context['page_title']);
        $keywords_ =  preg_replace ( "/\s\s+/" , " " , $keywords_);
        $keywords_ = str_replace(" ",", ",trim($keywords_));

$yaziyioku = mysql_query("SELECT `body` FROM `smf_messages` WHERE ID_MSG ='$context[first_message]'");
$buldum = mysql_fetch_array($yaziyioku);
$a = $buldum['body'];

$a = preg_replace('/(\[(.*?)\])(.*?)(\[(.*?)\])/',' ',$a);

if ($a=='' or $a==' ') 
$a = $context['page_title'];

$a=strip_tags($a);

sonra keyword ve description satırlarını değiştiriyoruz.

<meta name="description" content="', $a, '" />

<meta name="keywords" content="'.$keywords_.'" />
 

ysbostan

0
İyinet Üyesi
Katılım
4 Mart 2008
Mesajlar
39
Reaction score
0
PHP:
<?
$content="[img]resimadresi[/img]";
preg_match_all("/\[(.*?)\](.*?)\[\/(.*?)\]/", $content, $parca, PREG_SET_ORDER);
$cikti=str_replace($parca[0][1],"",$parca[0][0]); //[] arasini temizliyoruz
$cikti=str_replace($parca[0][2],"",$cikti); // []resimadresi[/] resimadresi temizliyoruz
echo $cikti;

/*
Ayrica
$parca[0][0] ciktisi=[img]resimadresi[/img]
$parca[0][1] ciktisi= img
$parca[0][2] ciktisi= resimadresi
$parca[0][3] ciktisi= img
olur, baska sekilde kullanmak istersen ideal bir yöntem.
*/
?>
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Üst