可变长度Lookbehinds RegEx don';t在Python中工作
我想提取“:”和“|”字符之间的文本,但在第二个和第三个数据中“:”后面有一个空格 输入:可变长度Lookbehinds RegEx don';t在Python中工作,python,regex,lookbehind,Python,Regex,Lookbehind,我想提取“:”和“|”字符之间的文本,但在第二个和第三个数据中“:”后面有一个空格 输入: Referencia:22726| Referencia Cliente Ak: 233726 | Referencia histórica: 256726 | Suelo | AGOLADA (Pontevedra) - CARPAZO O PE#A LONJA [EXTRACT] Referencia:39766| Referencia Cliente Ak: 39767 | Referencia
Referencia:22726| Referencia Cliente Ak: 233726 | Referencia histórica: 256726 | Suelo | AGOLADA (Pontevedra) - CARPAZO O PE#A LONJA [EXTRACT]
Referencia:39766| Referencia Cliente Ak: 39767 | Referencia histórica: 39768 | Garaje | MOJACAR (Almería) - URB.VILLA MIRADOR DEL MAR - MOD. # [EXTRACT]
Referencia:397A5| Referencia Cliente Ak: 397B5 | Referencia histórica: 397C5 | Garaje | MOJACAR (Almería) - VILLA MIRADOR DEL MAR-MODULO #-PLAZA 4 [EXTRACT]
Referencia:AA39803| Referencia Cliente Ak: P_39803 | Referencia histórica: 200_39803 | Garaje | MOJACAR (Almería) - VILLA MIRADOR DEL MAR - MODULO [EXTRACT]
所需输出:
22776
233726
256726
39766
39767
39768
397A5
397B5
397C5
AA39803
P_39803
200_39803
我的第一个模式:
(?删除lookback中的?
字符将\s
移动到匹配项
(?<=:)(\s?\w{5,12})
(?删除lookback中的?
字符将\s
移动到匹配项
(?<=:)(\s?\w{5,12})
(?删除lookback中的?
字符将\s
移动到匹配项
(?<=:)(\s?\w{5,12})
(?删除lookback中的?
字符将\s
移动到匹配项
(?<=:)(\s?\w{5,12})
(?在python中,lookback不能是可变长度的。解决此问题的方法:
(?:(?<=:\s)|(?<=:))(\w{5,12})
在python中,lookback不能是可变长度的。解决此问题的方法:
(?:(?<=:\s)|(?<=:))(\w{5,12})
在python中,lookback不能是可变长度的。解决此问题的方法:
(?:(?<=:\s)|(?<=:))(\w{5,12})
在python中,lookback不能是可变长度的。解决此问题的方法:
(?:(?<=:\s)|(?<=:))(\w{5,12})
哦,谢谢。我不知道在python中,lookback不能是可变长度的。我想,lookahead也不能是可变长度的。但是,它是否只有在python或其他语言中才是可变长度的。lookahead可以是可变长度的。在.net中,您可以使用可变长度的lookahead。Java允许使用这个量词{n,m}
和PHP允许替换。新的解决方案更干净。为什么前瞻可以是可变长度,但不能是任何一种前瞻?我没有一个明确的答案,因为你可以看到正则表达式引擎之间的限制是不同的。人们说:“由于正则表达式引擎从左到右工作,因此很难实现可变长度的查找。”(睡觉前重复三次)哦,谢谢。我不知道在python中,lookback不能是可变长度的。我想,lookahead也不能是可变长度的。但是,它是否只有在python或其他语言中才是可变长度的。lookahead可以是可变长度的。在.net中,您可以使用可变长度的lookahead。Java允许使用这个量词{n,m}
和PHP允许替换。新的解决方案更简洁。为什么前瞻可以是可变长度,但不能是任何一种前瞻?我没有一个明确的答案,因为您可以看到正则表达式引擎之间的限制是不同的。人们说:由于正则表达式引擎从左到右工作,因此很难实现可变长度的查找。”(在睡觉前重复三次)哦,谢谢。我不知道在python中,lookback不能是可变长度的。我想,lookahead也不能是可变长度的。但是,它是否只有在python或其他语言中才是可变长度的。lookahead可以是可变长度的。在.net中,您可以使用可变长度的lookahead。Java允许使用这个量词{n,m}
和PHP允许替换。新的解决方案更简洁。为什么前瞻可以是可变长度,但不能是任何一种前瞻?我没有一个明确的答案,因为您可以看到正则表达式引擎之间的限制是不同的。人们说:由于正则表达式引擎从左到右工作,因此很难实现可变长度的查找。”(在睡觉前重复三次)哦,谢谢。我不知道在python中,lookback不能是可变长度的。我想,lookahead也不能是可变长度的。但是,它是否只有在python或其他语言中才是可变长度的。lookahead可以是可变长度的。在.net中,您可以使用可变长度的lookahead。Java允许使用这个量词{n,m}
和PHP允许替换。新的解决方案更简洁。为什么前瞻可以是可变长度,但不能是任何一种前瞻?我没有一个明确的答案,因为您可以看到正则表达式引擎之间的限制是不同的。人们说:由于正则表达式引擎从左到右工作,因此很难实现可变长度的查找。”(在睡觉前重复三次)谢谢,优雅的解决方案!谢谢,优雅的解决方案!谢谢,优雅的解决方案!谢谢,优雅的解决方案!您可以使用regex
模块,它支持lookaheads和lookbehind中的可变长度。他们说,计划替换标准re
模块。您可以使用Pip安装它。(Pip install regex
)。您可以使用regex
模块,该模块支持lookaheads和lookbehinds中的可变长度。他们说,计划替换标准re
模块。您可以使用Pip安装它。(Pip install regex
)。您可以使用regex
模块,该模块支持lookaheads和lookbehinds中的可变长度。他们说,计划替换标准re
模块。您可以使用Pip安装它。(Pip install regex
)。您可以使用regex
模块,该模块支持lookaheads和lookbehinds中的可变长度。他们说,计划替换标准re
模块。您可以使用Pip安装它。(Pip install regex
)。