正则表达式检查n-root的数字是否不是浮点数

时间:2011-03-21 06:35:49

标签: regex

我正在尝试使用正则表达式来解决问题。

基本上,我想检查一个数字是否等于n的幂的基数(即2)。

例如,我需要检查数字i == 2,4,8,16或32然后做某事。

编辑: 问题在于数字实际来自遗留数据库中的varchar列。我可以解析它然后做一些像kobi推荐的事情,但是还有另一个问题,即数字在分隔列表中,即(1,2,3,32)。因此,我认为使用正则表达式会更容易,因为它可以节省许多步骤。

提前致谢。

1 个答案:

答案 0 :(得分:1)

在Python中:

import re
a = str(bin(number))
if re.match(r"[^1]*1[^1]*$", a):
    print "power of two"
相关问题