我是regex的新手,我正在尝试创建一个匹配任何以开头的字符串的表达式
开圆括号,3位数字,后面跟一个右括号:
适合的示例:
- (111)试验
- (212)你好
- (321)
不应该工作:
- (a22)试验
- (任何带小数点或负数的东西)
到目前为止我所创造的:^(d{3}^)*
我在一些在线regex测试网站上尝试过,但匹配不起作用。
我错过了什么?
您可以尝试类似的方法:^(d{3}).*$
。
上面应该匹配任何以括号开头的字符串(并不是说括号在regex语言中是一个特殊字符,因此它需要转义,因此在开头有额外的),后面跟着3位数字和一个右括号(这也是一个特殊的字符)。
正则表达式将尝试匹配任何其他字符的零次或多次重复,然后再期望找到字符串的末尾。
您的正则表达式,除了需要转义括号外,看起来很好,但是,它会查找零个或多个括号模式的重复。这意味着它也可以匹配foobar
。