PHP 在不使用正则的情况下去除两个指定字符中间的内容

这是一个用于去除字符串中指定括号内的内容的PHP函数。它接受三个参数:

  • $text: 待处理的字符串。
  • $leftBracket: 括号的左边界字符。
  • $rightBracket: 括号的右边界字符。

函数中的逻辑如下:

首先,通过strpos()函数查找字符串text中第一个leftBracket和对应的rightBracket的位置。

然后,进入循环,不断查找并替换括号内的内容,直到无法找到新的括号对位置。在每次循环中,将括号内的内容替换为空字符串,并继续查找下一个括号对的位置。如果找不到新的括号对位置,则退出循环并返回结果字符串$text。

最后,返回处理后的字符串。

通过调用这个函数,你可以方便地去除字符串中指定括号内的内容,并得到修改后的字符串。

PHP代码

private function removeInnerBrackets($text, $leftBracket, $rightBracket) {
        // 查找第一个左括号和对应的右括号的位置
        $start = strpos($text, $leftBracket);
        $end = strpos($text, $rightBracket, $start);
    
        // 循环查找并替换括号内的内容
        while ($start !== false && $end !== false) {
            // 获取括号内的内容
            $content = substr($text, $start, $end - $start + 1);
    
            // 替换括号内的内容为空字符串
            $text = str_replace($content, '', $text);
    
            // 继续查找下一个括号对的位置
            $start = strpos($text, $leftBracket, $start);
            $end = strpos($text, $rightBracket, $start);
        }
      
        return $text;
    }

 

© 版权声明
THE END
喜欢就支持一下吧
点赞6
评论 抢沙发

请登录后发表评论

    暂无评论内容