我读过这篇文章,其中/^1?$|^(11+?)\1+$/Perl正则表达式用于测试数字是否为素数.
处理:
s = '1' * your_number
Run Code Online (Sandbox Code Playgroud)
如果s匹配正则表达式,那么它不是素数.如果没有,那就是素数.
你会如何将该正则表达式转换为Python的re模块?
它按原样工作(除了没有边缘的斜线,Python中不需要):
pattern = r'^1?$|^(11+?)\1+$'
re.match(pattern, '1'*10) #matches
re.match(pattern, '1'*11) #doesn't match
Run Code Online (Sandbox Code Playgroud)
这里需要的唯一非标准正则表达式功能是backreferences(\1),Perl和Python都支持这些功能.
| 归档时间: |
|
| 查看次数: |
909 次 |
| 最近记录: |