次のような単語のリストがあります。
l = """abca
bcab
aaba
cccc
cbac
babb
"""
最初と最後の文字が同じで、真ん中の 2 文字が最初と最後の文字と異なる単語を見つけたいです。
望ましい最終結果:
['abca', 'bcab', 'cbac']
私はこれを試しました:
re.findall('^(.)..\\1$', l, re.MULTILINE)
ただし、不要な単語もすべて返します。[^...] をどうにか使おうと思ったのですが、思いつきませんでした。セットでこれを行う方法があります (上記の検索結果をフィルタリングするため) が、私は正規表現を探しています。
出来ますか?