Elbette ki uzaydan uyan iki kelimem ve bir çok boşluk öncesi ve sonrası ne yapmam gerektiğini boşluklardan önce ve sonra bir kez aradan çıkarmaktır.Dize öncesi ve sonrası boşluk nasıl kaldırılır?
Boşlukları önce ve sonra nasıl kaldırabilirim?
Elbette ki uzaydan uyan iki kelimem ve bir çok boşluk öncesi ve sonrası ne yapmam gerektiğini boşluklardan önce ve sonra bir kez aradan çıkarmaktır.Dize öncesi ve sonrası boşluk nasıl kaldırılır?
Boşlukları önce ve sonra nasıl kaldırabilirim?
Sen trim() kullanın bunun için regex gerekmez:
$words = ' my words ';
$words = trim($words);
var_dump($words);
// string(8) "my words"
Bu fonksiyon başında ve str ucundan soyulmuş boşluk olmadan dize döndürür. Bütünlüğü için
(bu soru regex
etiketlendiği gibi), burada regex bir trim()
reimplementation geçerli: daha hiç Yukarıdaki iki çözüm benim için çalıştı Nedense
function preg_trim($subject) {
$regex = "/\s*(\.*)\s*/s";
if (preg_match ($regex, $subject, $matches)) {
$subject = $matches[1];
}
return $subject;
}
$words = ' my words ';
$words = preg_trim($words);
var_dump($words);
// string(8) "my words"
, bu yüzden bu çözüm geldi.
function cleanSpaces($string) {
while(substr($string, 0,1)==" ")
{
$string = substr($string, 1);
cleanSpaces($string);
}
while(substr($string, -1)==" ")
{
$string = substr($string, 0, -1);
cleanSpaces($string);
}
return $string;
}
Bunun işe yarayabildiğini, özyineleme yükünün aşırı derecede yavaş ve verimsiz olduğunu fark et. Herhangi bir ipte iyi çalışması gerektiği için trim'in neden işe yaramadığından emin değilim. –
Bu nasıl oldu benim için çalışmadı? Hala beyaz bölgelerimi dizelerden sonra görüyorum. Herhangi bir ipucu? Kimse ? – ihue
Belki de gerçekten beyaz boşluklar değiller. Bu sorunu Office Word'den gelen metinlerle karşılaştırdım. –