gpt4 book ai didi

python - 我可以 "reuse"正则表达式下一组中的字符吗?

转载 作者:行者123 更新时间:2023-11-30 22:11:52 28 4
gpt4 key购买 nike

我想查找字符串中出现的字符(如果它们出现在某个“标记”字符之前或之后)。

所以我的标记是-,字符串是“a b-c d”。我想按顺序查找 bc

我试过了

re.findall(r'(-[a-z]|[a-z]-)','a b-c d')

显然只能得到

['b-']

我也尝试过

re.findall(r'([a-z]-[a-z])','a b-c d')

我得到了结果

['b-c']

,这更好,但我仍然需要对此结果进行后处理才能获得单个字符 bc

这个问题有没有一步解决方案?

编辑

后续问题:字符串是 "a b-c-d e" 我想要得到类似 [('','a',''), ('', 'b','-'), ('-','c','-'), ('-','d',''), ('','e','')]

我感觉这个要求太多了。

最佳答案

更多群组。

>>> re.findall(r'(([a-z])-([a-z]))','a b-c d')
[('b-c', 'b', 'c')]

既然你实际上并不关心原版......

>>> re.findall(r'([a-z])-([a-z])','a b-c d')
[('b', 'c')]

关于python - 我可以 "reuse"正则表达式下一组中的字符吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51296442/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com