2013-10-04 245 views
0

任何人都可以请帮我找出为什么下面的正则表达式不能匹配?我需要验证字符串以 “矩形(” 或 “矩形(” 开始,以 “)”正则表达式字符串结尾

rect (a,a,a,a) 

正则表达式

(^rect+\s*\()+\)$ 

回答

2

尝试逃离()

^rect\s*\(.*\)$ 

这是必须的,因为括号通常在正则表达式中有特殊含义,所以如果你想匹配一个字面值()它应该逃脱。

这将匹配:

  • 字符串的开始
  • 文字rect
  • 零个或多个空白字符
  • 文字(
  • 零个或多个任意字符
  • a文字)
  • 字符串
2

使用结束下列之一: ^rect\s*\(.*\)$

1

此正则表达式应该为你工作:

^rect\s*\(.*?\)$ 
相关问题