判断一个数是否为质数的方法:
import re
def is_prime(num):
return not re.match(r"^1?$|^(11+?)\1+$", '1' * num)
在这里转一下一个对这段代码评论
http://blog.csdn.net/g9yuayon/archive/2007/03/19/1533798.aspx
引用
这段代码除了漂亮精巧值得欣赏,以及可以用来玩味理解regex以外,还有什么价值呢?效率?显然不够高。实用性?恐怕也没有多少。不过,这段代码隐含了重要的编程思想:编码。我们可以把一段问题用某种方式表达出来,再根据这段表达谋求解决之道。这种方法看似简单,却应用广泛。我们可以把各式自动机用字符串表示出来,由此相对容易地发现很多深刻的性质。我们把系统规格用状态机描述出来,再把状态机用逻辑公式表达出来,于是我们可以自动验证系统规格有没有逻辑上的缺陷,有没有安全问题。进一步说,我们赖以为生的整个计算体系也是建立编码的基础上:所有的数据所有的命令最终被转换为0和1表示。计算理论基础更离不开编码。从歌德尔定理到图灵机理论到自动机理论到计算复杂性,不知多少伟大的证明依靠编码。
分享到:
相关推荐
linux下的C语言正则表达式头文件和源文件: regex.h regex.cpp
易语言源码RegEx.rar 易语言源码RegEx.rar 易语言源码RegEx.rar 易语言源码RegEx.rar 易语言源码RegEx.rar 易语言源码RegEx.rar
除了这些具有 regular expression 功能的现成工具外,另外还有一类俱有 regular expression 功能的程式库,可以供程式设计者很容易地在其程式中加入 regular expression 功能。例如 GNU 所发表的 Regex 程式库便是...
64位的regex.dll 在mingw环境下编译成的,大家可以使用
GNU regex windows编译 regex2dll 替换成源码。可直接添加进工程使用
一个.Net下的测试正则表达式 工具Regex Tester,打开压缩包,直接运行RegexTester.exe
我们在使用正则表达式( regex: regular expression )的过程中,经常发现正则表达式的语法很令人头疼,即使对经常使用它的人来说也是如此。对于刚接触正则表达式的人来说多练习,多使用,才能熟练掌握正则表达式。 ...
该文件是boost1.33版生成处理的,偶今天就为了弄这个,整整耗费了一个下午。顺便copy一段测试代码 #include <boost/regex.hpp> #include #include using namespace std; using namespace boost; regex e("^\\w+\...
SDL Regex Fuzzer是一款微软推出的正则表达式测试工具,可以用来发现这些潜在的漏洞。 SDL Regex Fuzzer支持的操作系统: Windows 7;Windows Server 2003;Windows Server 2008;Windows Server 2008 R2;Windows ...
regex最简单使用的工具
正则表达式regex.lib
C++Regex正则表达式
RegExr是一个基于HTML/JS的工具,用于创建,测试和学习正则表达式
Simple application for test string regex
Regex
regex 正则软件regex 正则软件regex 正则软件regex 正则软件regex 正则软件 让你很好的上手测试正则表达式
This resource is description how to use STL library of regex in cpp.
我的一个朋友问我,怎么在c#或vb.net中,计算一个字符串中查找另一个字符串中出现的次数,他说在网上打了好多方法,我看了一下,有的是...其实如果用正则表达式Regex类,去计算一个字符串出现的次数方法最为简单实用。
一个基于framework3.5 的editplus 插件. 用来替换regextester. 能够提示错误. 超时默认1000,可以修改 能够自定义显示起始位置和显示匹配个数 可以定位到行列号以及双击定位到文档位置 详细看图片说明.
linux下posix标准的正则表达式库,支持regcomp, regexec等,可以放到vs2010或vs2012下进行编译。