- 授权协议: Apache
- 开发语言: Python
- 操作系统: Linux
- 软件首页: https://github.com/google/sre_yield
软件介绍
sre_yield 是用于生成正则表达式匹配结果的 Python 模块,并尽可能的匹配到所有有效值。它采用了解析正则表达式的方式,所以你可以得到一个更加精确的结果,而不仅仅只是分散的字符串。
sre_yield 通常都无法处理反向引用、lookarounds 正则表达式,除此之外,还有在这几种情况下也无法处理;
The maximum value for repeats is system-dependant -- CPython's
sre
module there's a special value which is treated as infinite (either 2**16-1 or 2**32-1 depending on build). In sre_yield, this is taken as a literal, rather than infinite, thus (on a 2**16-1 platform):The
re
module docs say "Regular expression pattern strings may not contain null bytes" yet this appears to work fine.Order does not depend on greediness.
The regex is treated as fullmatch.
sre_yield
is confused by even the simplest of anchors:
代码示例:
>>> import random >>> v = sre_yield.AllStrings('[abc]{1,4}') >>> len(v) 120 # Now random.choice(v) has a 3/120 chance of choosing a single letter. >>> random.seed(1) >>> sum([1 if len(random.choice(v)) == 1 else 0 for _ in range(120)]) 3 # xeger(v) has ~25% chance of choosing a single letter, because the length and match are chosen independently. > from rstr import xeger > sum([1 if len(xeger('[abc]{1,4}')) == 1 else 0 for _ in range(120)]) 26
网站开发案例课堂:HTML5+CSS3+JavaScript网页设计案例课堂
刘玉红 / 2015-1-1 / 68
《网站开发案例课堂:HTML5+CSS3+JavaScript网页设计案例课堂》作者根据在长期教学中积累的网页设计教学经验,完整、详尽地介绍HTML 5 + CSS 3 + JavaScript网页设计技术。 《网站开发案例课堂:HTML5+CSS3+JavaScript网页设计案例课堂》共分24章,分别介绍HTML 5概述、HTML 5网页文档结构、HTML 5网页中的文本和图像、HTML......一起来看看 《网站开发案例课堂:HTML5+CSS3+JavaScript网页设计案例课堂》 这本书的介绍吧!