表达式查找由常量包围的特定长度字符串

时间:2010-07-09 16:51:25

标签: regex

我做正则表达很少,他们总是挑战我。即便是简单的。

如何制作与所有这些相匹配的正则表达式:

 := 'abc'
 := 'xyz'
 := '2rs'
 := 'abe'
 := 'a2c'

基本上它以:= '开头,以'结尾,里面有三个值。可能是数字或字符。

1 个答案:

答案 0 :(得分:3)

这样的事情应该有效(as seen on rubular.com):

:= '([a-z0-9]{3})'

说明:

  • := '字面匹配,因为它们不是元字符
  • [a-z0-9]定义了一个匹配小写字母和数字的字符类
  • {3}完全重复,3次
  • (...)是一个捕获组(不需要,但可能很方便)

此模式的细微变化包括:

  • [a-zA-Z0-9]代替也允许使用大写字母
  • {1,3}代替允许1-3次重复
  • := *'代替允许任意数量的空格(*此处表示“零次或多次重复”)

regular-expressions.info