下面这段Python代码演示了一个用正则表达式来判断素数的方法

复制代码 代码如下:
import re
def is_prime(num):
return not re.match(r"^1?$|^(11+?)\1+$", '1' * num)

这个正则表达式实际上表示所有合数长度的"1"串(还包括特例"1")。

(11+?)表示所有大于等于2的整数,后面接着的\1+表示重复一次以上——这不就是所有合数吗~~
转载请说明出处
知优网 » 用正则表达式来判断素数的代码(判断是否为素数的代码)

发表评论

您需要后才能发表评论