【问题标题】:Regex to include white space and then verify a character正则表达式包含空格,然后验证字符
【发布时间】:2018-05-17 14:20:36
【问题描述】:

我有一种模式可以在网络上搜索,但我是新手,无法验证它。

我正在寻找示例

[验证是否有空格] [任何这个 char ':' '|' ';'] [验证是否有空格] [[String a-zA-Z0-9-]+]

假设测试字符串-

" : hello129 " 或 ":hello129" 或 ";hello129" 或 "|hello129" 或 " | hello129"

我的尝试

 \s[:;|]\s[a-zA-Z0-9_.+-]+

(\w+\s\w+):(\w+\s\w+)[a-zA-Z0-9_.+-]+

请建议我在正则表达式/正则表达式中为这种模式提供可能的解决方案

提前谢谢你:)

【问题讨论】:

  • 请提供示例输入、预期输出和您自己的尝试。
  • 我的尝试:(\w+\s\w+):(\w+\s\w+)[a-zA-Z0-9_.+-]+
  • 您可以使用交互式regex101.com 来测试您的正则表达式并查看匹配的模式。
  • 预期输出:“:字符串”示例“:hello0123”
  • 提出问题,而不是 cmets ;)

标签: javascript python regex


【解决方案1】:

空格用\s 表示。其他组很容易写在括号中。 空格可以是一个或多个字符,因此+ 修饰符将是必要的。如果空白是可选的,* 也可以。如果只允许一个空格字符,我们将省略修饰符。 最后的字符串是一个或多个字符长,也需要+

结果是这样的正则表达式:

\s+[:;|]\s+[a-zA-Z0-9-]+

Here is an example including tests on the great RegEx testing site regex101.com.

【讨论】:

  • 有没有可能不使用\s 的方法,因为这不会给我结果,我只是面临空格问题
  • \s 面临的具体问题是什么?您可以将其拆分并更准确地指定所需的空白类型(空格、制表符、换行符)。目前,我们只检查任何可能的空白类型。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-09-19
  • 2013-08-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-12
相关资源
最近更新 更多