强盗的语言翻译回来了?

2024-06-16 10:56:57 发布

您现在位置:Python中文网/ 问答频道 /正文

所以这里提到的python robbers语言问题:

I made a Python 'robber's language' translating programme, is there another way?

很好-我现在很喜欢regex解决方案-有没有类似的regex解决方案可以将robbers语言恢复到原来的单词?在


Tags: 语言isanother解决方案单词languagewayregex
2条回答

任何在o周围有重复辅音的东西都会被辅音本身所取代:

re.sub(r'([bcdfghjklmnpqrstvwxyz])o\1', r'\1', inputtext)

[....]是一个字符组,与作为集合一部分的一个字符相匹配。这个字符被捕获在一个捕获组中((...)括号)。接下来,必须匹配一个文本o\1是一个反向引用,这意味着与第一个捕获组完全相同的文本必须匹配。因此,它只匹配tot或{}等字符序列。在

然后,我们重用相同的捕获组来定义替换;每个匹配的3个字符被第一个字符替换。在

演示:

^{2}$

对于辅音后跟o并单独使用的模式,仍然可以使用正则表达式替换:

import re
print re.sub(r'([bcdfghjklmnpqrstvwxyz])o\1', r'\1', 'tothohisos isos fofunon')

输出

^{2}$

相关问题 更多 >