我想匹配由逗号分隔的三个字符的字母序列(只允许字母'a','b','c')(最后一个组不以逗号结尾).
例子:
abc,bca,cbb
ccc,abc,aab,baa
bcb
Run Code Online (Sandbox Code Playgroud)
我写了以下正则表达式:
re.match('([abc][abc][abc],)+', "abc,defx,df")
Run Code Online (Sandbox Code Playgroud)
但它无法正常工作,因为上面的示例:
>>> print bool(re.match('([abc][abc][abc],)+', "abc,defx,df")) # defx in second group
True
>>> print bool(re.match('([abc][abc][abc],)+', "axc,defx,df")) # 'x' in first group
False
Run Code Online (Sandbox Code Playgroud)
似乎只检查第一组三个字母,但它忽略了其余的.如何正确编写这个正则表达式?
sce*_*sor 10
试试下面的正则表达式:
^[abc]{3}(,[abc]{3})*$
Run Code Online (Sandbox Code Playgroud)
^...$从字符串的开头到结尾字符串中的
[...]一个给定字符
...{3}三次短语前的
(...)*0到n次括号中的字符
| 归档时间: |
|
| 查看次数: |
8800 次 |
| 最近记录: |