gpt4 book ai didi

python - 可以用正则表达式匹配字符重复吗?如何?

转载 作者:太空狗 更新时间:2023-10-29 17:52:07 25 4
gpt4 key购买 nike

问题:
是否可以使用正则表达式来匹配在不同位置包含相同字符的单词?

条件:
所有单词的长度都相同,你知道重复字符的字符位置(例如第 1、2 和 4),但你不知道它是什么。

示例:
使用小写的 6char 单词我想匹配第 3 个和第 4 个字符相同的单词。

parrot <- match for double r
follia <- match for double l
carrot <- match for double r
mattia <- match for double t
rettoo <- match for double t
melone <- doesn't match

我不能使用量词 [\d]{2} 因为它匹配任何连续的两个字符,如果我说第二和第四位置而不是第三和第四位置呢?

是否可以用正则表达式做我想做的事?如果是,我该怎么做?

编辑:
评论里问问,我用的是python

最佳答案

你可以使用反向引用来做到这一点:

(.)\1

这将匹配任何字符的连续出现。


编辑 这是一些 Python 示例:

import re

regexp = re.compile(r"(.)\1")
data = ["parrot","follia","carrot","mattia","rettoo","melone"]

for str in data:
match = re.search(regexp, str)
if match:
print str, "<- match for double", match.group(1)
else:
print str, "<- doesn't match"

关于python - 可以用正则表达式匹配字符重复吗?如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1023902/

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