【发布时间】:2013-05-24 13:21:57
【问题描述】:
我需要替换字符串中的两个输入错误的字母,例如“bbig”。但它仅适用于拉丁字母,不适用于西里尔字母。我在 Centos Linux 下使用 Python 2.6.6 版本。
#!/usr/bin/python
# -*- coding: utf-8 -*-
import re
def reg(item):
item = re.sub(r'([A-ZА-ЯЁЄЇІ])\1', r'\1', item, re.U)
#this work only with latin too
#item = re.sub(r'(.)\1', r'\1', item, re.U)
return item
print reg('ББООЛЛЬЬШШООЙЙ')
print reg('BBIIGG')
上面的代码返回:
- ББООЛЛЬЬШШООЙЙ
- 大
我做错了什么?感谢您的帮助。
【问题讨论】:
-
你是这个意思吗? u'ББООЛЛЬЬШШООЙЙ' 无差别输出相似
-
您的代码如何区分合法的双字母和拼写错误的?
标签: python regex unicode duplicates cyrillic