问题标签 [pypi-regex]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1653 浏览

python - 使用 Python 的新正则表达式模块创建模糊匹配异常

我正在测试新的 python正则表达式模块,它允许模糊字符串匹配,到目前为止,它的功能给我留下了深刻的印象。但是,我在使用模糊匹配处理某些例外时遇到了麻烦。以下是一个很好的例子。我想和1 的编辑距离内的ST LOUIS所有变体相匹配。但是,我想对这条规则做一个例外:编辑不能包括在包含字母、、或的最左侧字符的左侧插入。在以下示例中,我希望输入 1 - 3 与 ref 匹配,而输入 4 则失败。但是,使用以下ST LOUISrefNSEWref使其匹配所有四个输入。熟悉新的正则表达式模块的人是否知道可能的解决方法?

0 投票
2 回答
1232 浏览

python - Python“正则表达式”模块:模糊值

我正在使用Regex模块的“模糊匹配”功能。

如何获得“匹配”的“模糊值”,它指示模式与字符串的不同程度,就像 Levenshtein 中的“编辑距离”一样?

我以为我可以在 Match 对象中获得值,但它不存在。官方文档也没说什么。

例如:

a.captures()告诉我“for”这个词是匹配的,但我想知道模糊值,1在这种情况下应该是。

有没有办法做到这一点?

0 投票
1 回答
153 浏览

python - 新的正则表达式模块模糊函数错误值。Python

我正在尝试新的正则表达式模块的模糊功能。在这种情况下,我希望找到所有具有 <= 1 错误的字符串的匹配项,但我遇到了麻烦

我也试过

但是这个 。. .

0 投票
1 回答
3504 浏览

python - 用 python regex 编译一个模糊的正则表达式

当我发现 python regex模块允许模糊匹配时,我越来越高兴,因为它似乎是我许多问题的简单解决方案。但是现在我遇到了一个问题,我没有从文档中找到任何答案。

如何使用新的模糊值功能将字符串编译成正则表达式?

为了说明我平时的需求,并给出一个示例一小段代码

如您所见,具有 3 个错误的模糊性的正则表达式工作正常。但是我被迫将整个字符串(nosZ2f/r)手动输入到 findall 中。我无法编译带有错误/模糊值的正则表达式。

将字符串(行 nosZ2f/r)转换为模糊值为 3 错误的正则表达式模式的正确语法是什么?(在注释行看到失败的尝试)

使用输入字符串作为正则表达式源的可能性对于我想到的任何实际有用的脚本都至关重要。(否则不会发生太多自动化)所以如果我能 frex,我会很高兴。代替

或者

0 投票
1 回答
479 浏览

python - 与python匹配的模糊正则表达式返回空列表

我首次尝试使用repython 2.7 中的模块进行模糊模式匹配。

不幸的是,我所做的每一次尝试都会返回一个空列表。我根本不明白所需的语法。我想知道是否有人可以告诉我为什么下面的代码:

返回一个空列表?

0 投票
1 回答
68 浏览

python - 带有嵌套或正则表达式的python模糊正则表达式

我正在尝试对一串 DNA 读数进行一些模糊匹配。我想允许最多 1 个替换错误,同时允许一个特定的碱基对成为两个选项之一(在这种情况下是 A 或 G)。

我从以下开始:

符合预期,因为我正在匹配确切的字符串

符合预期,因为我正在匹配除了第一个碱基对已从 A 切换到 G 的确切字符串(允许)

符合预期,因为发生了单个替换 (C->x)

不匹配(如预期),因为有两个替换

应该匹配,因为第一个碱基对错误(x 而不是 A 或 G)应该被算作替换。

0 投票
1 回答
2413 浏览

python - 如何找到最佳的模糊字符串匹配?

Python 的新正则表达式模块支持模糊字符串匹配。大声赞美(现在)。

根据文档:

ENHANCEMATCH标志进行模糊匹配尝试以提高它找到的下一个匹配的拟合度。

BESTMATCH标志使模糊匹配搜索最佳匹配而不是下一个匹配

使用asENHANCEMATCH设置标志(?e)

regex.search("(?e)(dog){e<=1}", "cat and dog")[1]返回“狗”

但实际上设置BESTMATCH标志并没有什么。它是怎么做的?

0 投票
1 回答
380 浏览

python - 不匹配的模棱两可的子字符串

我正在尝试使用正则表达式在一串 DNA 中查找子串。这个子字符串有模棱两可的基数,比如ATCGR,哪里R可能是AG。此外,脚本必须允许x不匹配的数量。所以这是我的代码

因此,如果有一个不匹配,我会期望 3 个子字符串AC**TGC**TGAGTCGTandACTGC**TGA**GTCGTACTGCTGAGT**CGT**。预期的结果应该是这样的:

但输出是

即使使用 re.findall,代码也无法识别最后一个子字符串。另一方面,如果代码设置为允许 2 个与 {e<=2} 不匹配,则输出为

还有另一种方法来获取所有子字符串吗?

0 投票
2 回答
9060 浏览

python - 模糊正则表达式(例如 {e<=2})在 Python 中的正确用法

我试图找到与原始模式字符串“远离”最多两个错误的字符串(即它们最多相差两个字母)。

但是,以下代码没有按我的预期工作,至少从我对模糊正则表达式的理解来看:

如您所见,这两个字符串在三个字母上不同,而不是最多两个:

第一个有:ATAG GAG AAGATGATGTATA

第二个有:ATAG AGC AAGATGATGTATA

然而结果显示第二个字符串,好像它在 e<=2 内(这也发生在重叠 = False 中,所以不可能是这样)。

我在这里想念什么?有没有办法让它在给定模式的 Hamming 2-ball 中只找到字符串?

字母交换是否有可能被认为只是一种变化?如果是这样 - 我该如何避免这种情况?

0 投票
1 回答
69 浏览

python - 递归正则表达式仅在递归之前的匹配开始时进行模式匹配?

我试图找到匹配的括号,中间还有一些括号。我有以下正则表达式可以做到这一点,它匹配括号以找到与之关联的那个。我现在需要的是它还搜索前缀,例如“测试”。然而,它会递归整个模式。我不能简单地在模式的开头包含“测试”。我也只希望它在前缀以“Test”开头时匹配,而不仅仅是匹配任何括号。

我想用其他东西替换“Test(...)”,所以如果它是一种模式会更好,这样我就可以使用regex.sub().