【问题标题】:How to remove all hidden characters except colons, numbers and 'AM' or 'PM'如何删除除冒号、数字和“AM”或“PM”之外的所有隐藏字符
【发布时间】:2015-04-09 20:04:34
【问题描述】:

我有一个字符串,里面有这样的时间

“上午 6:00:00”或“晚上 10:15:00”

我知道字符串中包含隐藏字符,因此我想使用正则表达式替换除冒号、数字和 AM 或 PM 之外的所有字符。

不确定这是否有效,因为我的字符串比较检查仍然失败。

selectedTime = selectedTime.replace(/^\w:\s/g, "");

我也试过

selectedTime = selectedTime.replace(/[^\w:\s]/g, "");

【问题讨论】:

    标签: javascript regex string replace


    【解决方案1】:

    如上所述...这替换了除数字(^\d 部分)、冒号(^: 部分)和 AM/PM(^AMP 部分)之外的所有内容。

    selectedTime = selectedTime.replace(/[^\d:AMP]/g,"");

    您也可以使用https://regex101.com 进行测试

    【讨论】:

      【解决方案2】:

      此正则表达式替换除数字、冒号和 AM PM 之外的所有字符

      selectedTime = selectedTime.replace(/[^\d:AMP]/gi, "");
      

      这里是DEMO

      【讨论】:

      • 我也需要删除空格,因为可能有隐藏空格
      • 我不确定字符串中是否还有其他数据,例如这应该可以工作。
      • 它肯定会删除任何讨厌的隐藏字符
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-12-28
      • 2022-09-27
      • 2017-04-05
      • 2020-02-01
      • 2017-03-03
      • 1970-01-01
      相关资源
      最近更新 更多