Bazen, programlama amacıyla bir dizeden özel karakterleri kaldırmanız gerekebilir. PHP, dize verilerinden özel karakterleri kaldırmak için kullanılabilecek birçok yerleşik işleve sahiptir. Bu öğretici, bir dizeden özel karakterleri kaldırmak için birkaç farklı PHP yerleşik işlevinin nasıl kullanılacağını gösterir.
str_replace() İşlevi
Bir dizgeden özel karakterleri çıkarmak için kullanılabilecek kullanışlı bir işlev, str_replace() işlev. Belirtilen karakteri kaldırmak için bu işlevde değiştirilen karakter için boş dize kullanılmalıdır. Bu işlevin sözdizimi aşağıda verilmiştir.
str_replace ($arama_str, $değiştirme_str, $main_str [,$sayım ])
NS str_replace() fonksiyon dört argüman alabilir. İlk üç argüman zorunludur ve son argüman isteğe bağlıdır. NS $arama_str değişken, dizede aranacak değeri saklar. NS $değiştirme_str değişken, arama metninin eşleştiği dizeden değiştirilecek değeri saklar. değeri olarak boş bir dize kullanmalısınız. $değiştirme_str arama metnini ana dizeden kaldırmak için değişken. NS $sayım argüman, kaç karakterin değiştirildiğini veya kaldırıldığını gösteren bir değeri saklar.
Örnek: Kullanma str_replace() Özel Karakterleri Kaldırmak için
Aşağıdaki komut dosyası, str_replace() bir veri dizisinden özel bir karakteri kaldırma işlevi. Değiştirme görevini gerçekleştirmek için komut dosyasında kullanıcı tanımlı bir işlev bildirildi. NS hash(#), tek tırnak(‘) ve noktalı virgül(;) karakterler arama karakterleri olarak kullanılırken boş dize bu karakterlerin yerine geçen metin olarak kullanılır.
/* Aşağıdaki betik bazılarını kaldıracak
kullanarak bir dizeden özel karakterler str_replace()
işlev
* /
//Ana diziyi tanımlayın
$anabilgisayar = '#Bu basit bir metindir;';
// Kaldırmadan önceki çıktı
dışarı attı ' Kaldırmadan önce metin:
'.$anabilgisayar;
// işlevi çağır
$replacestr =rm_special_char($anabilgisayar);
//Boşluk karakterini kaldıracak işlevi tanımlayın
işlevrm_special_char($ str) {
//'#',''' ve ';' işaretlerini kaldırın str_replace() işlevini kullanarak
$sonuç = str_replace ( dizi ('#', ''', ';'), '', $ str);
//Kaldırdıktan sonraki çıktı
dışarı attı '
Kaldırdıktan sonra metin:
'.$sonuç;
}
?>
Çıktı
Yukarıda verilen betiği çalıştırdıktan sonra aşağıdaki çıktı görünecektir. Ana metnin değeri, çağrılmadan önce yazdırılır. str_replace() üç özel karakter ana metinden kaldırılır ve daha sonra yazdırılır.
preg_replace() İşlevi
NS preg_replace() işlevi, arama düzenine dayalı olarak dize verilerini değiştirmek için kullanılır. Bu işlevin sözdizimi aşağıda verilmiştir.
preg_replace ( $ desen, $değiştir, $dize [,$ limiti [,$sayım]] )Bu fonksiyon beş argüman alabilir. İlk üç argüman zorunludur ve son iki argüman isteğe bağlıdır. NS $ desen argüman, bir dizgedeki karakter(ler)i aramak için kalıbı tanımlamak için kullanılır. NS $değiştir değiştirilecek metni tanımlamak için argüman kullanılır ve değiştirilen metin özel karakterleri kaldırmak için kullanılan boş bir dize olacaktır. NS $dize argüman, kalıbın aranacağı ve değiştirileceği ana dizgiyi tanımlamak için kullanılır.
Örnek: Özel Karakterleri Kaldırmak için preg_replace() Kullanımı
Aşağıdaki komut dosyası, preg_replace() dize verilerinden belirli bir özel karakteri kaldırma işlevi. Karakterleri aramak için işlevde '[0-9/[0-9%$?]/s' kalıbı kullanılır. Bu, dize verilerindeki tüm '%',' '$' ve '?' karakterlerini arayacak ve karakterler varsa bu karakterleri boş dizeyle değiştirecektir.
/* Aşağıdaki betik bazılarını kaldıracak
preg_replace() kullanarak bir dizeden özel karakterler
işlev
* /
//Ana diziyi tanımlayın
$anabilgisayar = '200Seviyorum$phpprogramlama %50?.';
// Kaldırmadan önceki çıktı
dışarı attı ' Kaldırmadan önce metin:
'.$anabilgisayar;
// işlevi çağır
$replacestr =rm_special_char($anabilgisayar);
//Boşluk karakterini kaldıracak işlevi tanımlayın
işlevrm_special_char($ str) {
//'#',''' ve ';' işaretlerini kaldırın str_replace() işlevini kullanarak
$sonuç = preg_replace ('/[0-9$?]/s','', $ str);
//Kaldırdıktan sonraki çıktı
dışarı attı '
Kaldırdıktan sonra metin:
'.$sonuç;
}
?>
Çıktı
Komut dosyasını çalıştırdıktan sonra aşağıdaki çıktı görünecektir. Aramadan önce ana metnin değeri yazdırılacaktır. preg_replace() işlev. NS 200, 50, '%' ve '?' karakterler ana metinden kaldırılacak ve daha sonra yazdırılacaktır.
NS htmlözel karakterler() ve str_ireplace () Fonksiyonlar
NS htmlözel karakterler() ve str_ireplace () işlevler, önceden tanımlanmış tüm karakterleri HTML'ye dönüştürmek için kullanılır. Örneğin, ' < ' dönüştürülecek & lt , '' & ' dönüştürülecek & ,’ vb. Dize verilerinden önceden tanımlanmış karakterlerin etkisini kaldırmak için bu işlevleri kullanabilirsiniz.
Örnek: Kullanma htmlözel karakterler() ve str_ireplace () Özel Karakterleri Kaldırmak için
Aşağıdaki komut dosyası, bir dizeden önceden tanımlanmış karakterlerin etkisinin aşağıdaki komut kullanılarak nasıl kaldırılacağını gösterir. htmlözel karakterler() işlev. Sonra str_ireplace () işlevi, metinden HTML varlıklarını kaldırmak için kullanılır. NS str_ireplace () fonksiyon şu şekilde çalışır str_replace() ancak büyük/küçük harfe duyarlı olmayan aramalar yapabilir. Ana dize ile metin içerir< h2 > ve< B > etiketler. Bu nedenle, metin önceden tanımlanmış karakterlerin etkisini kaldırmadan önce yazdırıldığında, dize, HTML başlığının ve kalın etiketlerin etkisiyle görüntülenecektir. Verilen işlevler uygulandıktan sonra düz metin görüntülenecektir.
//Ana diziyi tanımlayın
$anabilgisayar = '
Hoşgeldiniz Linuxİpucu
';// HTML etiketli çıktı
dışarı attı 'Kaldırmadan önce metin:'.$anabilgisayar;
//HTML etiketlerini kaldırdıktan sonraki çıktı
dışarı attı 'Kaldırdıktan sonra metin:
'.
str_ireplace ( dizi (' ', ' ','
'
,''),'',htmlözel karakterler ($anabilgisayar));
?>
Çıktı
Komut dosyasını çalıştırdıktan sonra aşağıdaki çıktı görünecektir.
trim() Fonksiyonu
NS kırp () işlevi bir veri dizisinin başlangıcından ve sonundan belirli karakterleri kaldırmak için kullanılır. Bu işlev, bir veri dizisinin ortasından karakterleri kaldıramaz. Bu nedenle, bu işlevi yalnızca bir dizenin başından ve sonundan özel karakterleri kaldırmak istiyorsanız kullanabilirsiniz.
Örnek: trim() İşlev Özel Karakterleri Kaldırmak için
Aşağıdaki komut dosyası, kırp () işlevi kaldırmak için ' @ ' ve ' ! ' dize değişkeninin başlangıcındaki ve sonundaki karakterler $anabilgisayar . değeri $anabilgisayar değişken, karakterleri kaldırmadan önce ve sonra yazdırılacaktır.
//Ana diziyi tanımlayın
$anabilgisayar = '@@Web Programlama!!!.';
// trim() kullanılmadan önceki çıktı
dışarı attı ' Kaldırmadan önce metin:
'.$anabilgisayar;
// trim() kullanıldıktan sonraki çıktı
dışarı attı '
Kaldırdıktan sonra metin:
'. kırpmak ($anabilgisayar,'@!');
?>
Çıktı
Komut dosyasını çalıştırdıktan sonra aşağıdaki çıktı görünecektir. Burada iki' @ ' karakter baştan kaldırılır ve üç ' ! ' karakterleri, dize değişkeninin sonundan kaldırılır $anabilgisayar .
Çözüm
Bu öğretici, dize verilerinden özel karakterleri kaldırmanın dört farklı yolunu gösterdi. Bu öğreticinin, okuyucuların bu makalede sağlanan işlevleri komut dosyalarında uygulamalarına yardımcı olacağını umuyorum.