dpm91915 2018-02-07 14:45
浏览 153
已采纳

正则表达式 - 用PHP替换所有特定的特殊字符

I am trying to remove some specific special characters from my strings and also the letters

These are the special characters /,-‗‖*<>:;^’+. This is what I tried:

$telephone = preg_replace('[^/,-‗‖*<>:;^’+]', '', $telephone);

Example: adadsdad131231231222/,-‗‖*<>:;^’+22222 , should become: 13123123122222222

But I am not so good with regex. I tried to find smth similar, with specific characters , but aren't any posts :( Can you help me with this ?

UPDATE Another example: adadsdad131231231222/,-‗‖*<&>:;^’+22222 should become 131231231222&22222

  • 写回答

1条回答 默认 最新

  • dongyun234854 2018-02-07 14:47
    关注

    You had these mistakes in your regex:

    • ^ in the beginning negates the character class. So, I escaped it with \
    • - in the middle will let you match a range of characters. Hence, I moved it to the end of the character class
    • You did not include the range a-z

    Try this regex:

    (?i)[\^\/,‗‖*<>:;^’+a-z-]+
    

    Replace matches with a blank string

    Click for Demo

    Code Result

    Explanation:

    • (?i) - case-insensitive modifier
    • (?i)[\^\/,‗‖*<>:;^’+a-z-]+ - matches either a letter or any of these characters ^,/,,,*,<,>,:,;,+,-
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 怎样才能让鼠标沿着线条的中心线轨迹移动
  • ¥60 用visual studio编写程序,利用间接平差求解水准网
  • ¥15 Llama如何调用shell或者Python
  • ¥20 谁能帮我挨个解读这个php语言编的代码什么意思?
  • ¥15 win10权限管理,限制普通用户使用删除功能
  • ¥15 minnio内存占用过大,内存没被回收(Windows环境)
  • ¥65 抖音咸鱼付款链接转码支付宝
  • ¥15 ubuntu22.04上安装ursim-3.15.8.106339遇到的问题
  • ¥15 blast算法(相关搜索:数据库)
  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?