2012-05-01 237 views
2

我有一個字符串包含一些文本,最後一個字符可能(可能)是一個斜槓,我不想要。如果存在,我該如何刪除它?刪除字符串的最後一個字符(如果存在)

這是「正確」的方式嗎?

if(substr($str, -1) == "/") $str = rtrim($str, '/'); 
+0

您正在編碼的語言? – Aminesrine

+2

@Bouaziz :)它已經被標記爲緊接在問題下方的PHP。 – Lion

回答

8

使用rtrim沒有條件,它更短,也可能更快。增加的if是噪音,不提供任何東西。

+0

關於幾個符號?例如,我需要削減「1」。或「2.」等 – user1954544

+0

@ user1954544我會用一個正則表達式,像'preg_replace('/^\ d + \ ./','',$ input)'' – Jon

1

,如果你有一個字符串$串嘗試使用

substr_replace($string ,"",-1); 

substr($string, 0, -1); 

mb_substr($string, 0, -1); 

就將刪除$字符串的最後一個字符。

0

這將替換URL的最後一個字符,如果它是一個「/」

concat(LEFT(url, LENGTH(url)-1),replace(right(url, 1),'/','')) 
0

對我來說,我需要刪除severalsymbols像「1」。或「2.」等。這裏是代碼:

/** 
* @param string $string 
* 
* @return string 
*/ 
private function cutNumbers($string) 
{ 
    for ($i = 1; $i < 20; $i++) { 
     $position = strpos($string, $i . '.'); 

     if ($position === 0) { 
      $string = substr($string, 2); 
     } 
    } 

    return $string; 
} 

PS:我知道有更好的解決方案,但無論如何 - 修補程序將幫助某人。

相關問題