dougua9165 2019-06-17 18:03
浏览 325
已采纳

如何使用正则表达式替换圆括号的任何括号?

Here is code:

$string="{1},[2],(3),<4>";
// Replaces closing square, curly, angle brackets with round brackets
$string = preg_replace('/\{\[\</', '(', $string);
$string = preg_replace('/\}\]\>/', ')', $string);

It didn't replace at all in that string... Any better coding than that?

Thanks.

  • 写回答

4条回答 默认 最新

  • dongxuan1314 2019-06-17 18:05
    关注

    {[< never occurs in your string. Use a character class or optional grouping.

    $string = preg_replace('/[{[<]/', '(', $string);
    $string = preg_replace('/[}>\]]/', ')', $string);
    

    Alternative non character class approach:

    $string = preg_replace('/(?:\{|<|\[)/', '(', $string);
    $string = preg_replace('/(?:\}|>|\])/', ')', $string);
    

    https://3v4l.org/URvcb

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 设计简单目录管理系统,要满足以下内容
  • ¥15 关于九十度混合耦合器信号分析问题
  • ¥15 Cesm如何关闭不用的模块呢
  • ¥15 vue2两层数据导出为excle
  • ¥15 有人能帮我做一下这个项目吗
  • ¥15 网络上传速率比下载速率高
  • ¥15 (标签-游戏|关键词-网页游戏)
  • ¥15 这个咋搞🥹可能需要手把手教
  • ¥15 接口和关键字的问题,多选
  • ¥15 yolov5s模型下载就卡住,没有运行结果