【问题标题】:PCRE regex remove stringPCRE 正则表达式删除字符串
【发布时间】:2014-11-07 02:34:46
【问题描述】:

我有以下字符串sip:123456789@example.com:5065

我想像下面这样输出,总之我想删除:@之间的任何东西

sip:example.com:5065

如何使用PCRE 正则表达式删除该字符串?

【问题讨论】:

  • 你知道sed不支持PCRE吗?
  • @anubhava 对于 PCRE,有 Super-sed:)
  • 感谢@jaypal:是的,我知道ssed,但还没有在 OSX 上尝试过。
  • 正则表达式不要删除;他们定义了一组字符串。 PCRE 正则表达式是不够的。

标签: regex perl sed pcre


【解决方案1】:
sed 's/:[^@]*@/:/' input > output

【讨论】:

  • 或者只是s/[^:@]*@//
【解决方案2】:

或者这个sed

sed s/[^:]*@//

echo "sip:123456789@example.com:5065" | sed s/[^:]*@//
sip:example.com:5065

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-03
    • 2011-06-28
    相关资源
    最近更新 更多