如何从php或regex中的字符串末尾删除特定字符

时间:2013-06-01 17:34:10

标签: php regex

我正在动态生成一个字符串。例如,字符串看起来像这样

$string = "this-is-a-test-string-for-example-";

它也可以像这样

$string = "this-is-a-test-string-for-example";

我想如果字符串末尾有连字符"-",则应将其删除。我怎么能在php或regex中做到这一点?

4 个答案:

答案 0 :(得分:11)

http://pl1.php.net/trim - 该函数将字符修剪为最后一个参数

trim($string,"-");

或仅为右侧建议

rtrim($string,"-");

答案 1 :(得分:2)

如果它始终位于字符串的末尾(右侧),则可以使用

$string = rtrim($string,"-");

答案 2 :(得分:1)

$cleanedString = preg_replace('/^(this-is-a-test-string-for-example)-$/', '$1', $string);

答案 3 :(得分:0)

$delete = array('-');

if(in_array($string[(strlen($string)-1)], $delete))
    $string = substr($string, 0, strlen($string)-1);

您可以将其他字符添加到$delete数组中。