我有一个键、值对的列表
lst = [
('AAI', 'AirportAuthorityofIndia'),
('AAO', 'AssistantAccountsOfficer'),
('AB', 'AutonomousBodies'),
('ABA', 'AntiBoostMissile'),
('ABC', 'AuditBureauofCirculation'),
('ABM', 'AntiBallisticMissile'),
('ABVP', 'AkhilBharatiyaVidyarthiParishad'),
('AC', 'AssistantCollector'),
('AC', 'AirConditioner'),
('ACL', 'AccessControlList'),
('ACT', 'AssociationofComputerTechnology')]
我试图做的是在值中的单词之间添加空格。例如:
我需要分开:
('AAI', 'AirportAuthorityofIndia')
变成('AAI', 'Airport Authority of India')
('ACT', 'AssociationofComputerTechnology')
变成('ACT', 'Association of Computer Technology')
如果只有大写字母,我可以用正则表达式
[(abbr, re.sub(r'([a-z])(?=[A-Z])', r'\1 ', long)) for abbr, long in lst]
我得到
[('AAI', 'Airport Authorityof India')....etc
如何在小写字母之间添加空格
或者我可以用其他方法来做这件事吗
虽然远非理想的解决方案。
infer_spaces(s)
函数在您的例子中,您必须包括印度本地单词,如
Akhil
、Bharatiya
、Vidyarthi
、Parishad
,并将其扩展到您的自定义单词词典文件,以使其完全通用。我就是这样吼叫的产出:
我制作了如下代码。我希望这能帮助你
[A-Z]{1}-大写字母只出现一次,后跟一个或多个小写字母[A-Z]+
相关问题 更多 >
编程相关推荐