【问题标题】:What is the special character / escape for "whitespace" in a POSIX extented regular expression?POSIX 扩展正则表达式中“空白”的特殊字符/转义是什么?
【发布时间】:2014-12-11 09:10:36
【问题描述】:

我是这个常规 exp 概念的新手。我正在尝试使用此 reg ex

[^@\s]+$

如果我将字符串指定为“abs”,则它实际上不包括字符 's' 。这意味着 '\s' 被读取为字符 's' 而不是空格。请帮我解决这个问题

【问题讨论】:

  • 请检查我的编辑是否正确。我不知道. 是否是您的正则表达式的一部分,但我认为可能不是,所以我将其删除。
  • 谢谢。 '。'不是其中的一部分。

标签: regex posix-ere


【解决方案1】:

您可以使用这个 POSIX 等效项:

^[^@[:space:]]+$

[:space:] 匹配任何空格,包括换行符。如果您想避免匹配换行符,请改用:[:blank:]

【讨论】:

【解决方案2】:

POSIX 中的空格字符类是 [:space:],因此在您的情况下,您的正则表达式将是:

[^@[:space:]]+$

请注意,[:space:] 不能像 \d\s 以其他形式独立于 [] 之外。一个空格字符类必须在[]内部:

[[:space:]]

【讨论】:

    猜你喜欢
    • 2013-12-28
    • 1970-01-01
    • 2011-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多