无法弄清楚如何制作这种正则表达式模式

时间:2014-07-21 02:21:05

标签: regex

我需要一个匹配由空格.:限定的任何字母,数字和下划线的模式。

2 个答案:

答案 0 :(得分:1)

听起来你想要这样的东西:

^[ .:]\w+[ .:]$

<强>解释

  • ^锚点断言我们位于字符串的开头
  • [ .:]匹配一个空格字符,句点或冒号
  • \w+匹配一个或多个字母,数字或下划线
  • [ .:]匹配一个空格字符,句点或冒号
  • $锚点断言我们位于字符串的末尾

潜在调整

  • 在正则表达式术语中,“white-space”不仅指空格字符,还指制表符,回车符和其他形式的间距。如果这是您的意思,请使用\s代替[ .:]
  • 中的空格
  • 如果您想允许多个空格字符,冒号或点,您可以像这样调整正则表达式:^[ .:]+\w+[ .:]+$

答案 1 :(得分:0)

这很简单。这应该有效:

([\s\d][ .:])+[\s\d]+

基本上[\s\d]是字母,数字或下划线,[ .:]是空格,点或冒号。