繁体   English   中英

Python用另一个字符串替换字符串(大写或小写)

[英]Python replace string (upper or lower case) with another string

我想将文字中的“月份”替换为“八月”。

text=text.replace('?Month','August')

问题是我不想在?Month中使用大写或小写。 不管月份是大写还是小写(或混合使用),都应用8月覆盖。 请参阅以下示例:

E.g: ?Month ->August 
?month -> August
?MONTH -> August
?moNth -> August

我怎么做?

使用正则表达式(通过re模块 ):

import re

text = re.sub(r'\?month', 'August', text, flags=re.IGNORECASE)

re.IGNORECASE标志告诉正则表达式引擎不区分大小写地匹配文本:

>>> import re
>>> text = 'Demo: ?Month ?month ?MONTH ?moNth'
>>> re.sub(r'\?month', 'August', text, flags=re.IGNORECASE)
'Demo: August August August August'

对于运动,无需导入任何内容:

text = text.split(' ')
for i, s in enumerate(text): text[i] = 'August' if s.lower() == 'month' else text[i]

print((' ').join(text))

如果s.lower()等于month它将在August替换每次出现的s

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM