问题16:如何调整字符串中文本的格式
案例:修改字符串中日期的表示方式
方案:使用re.sub()方法,对字符串中的内容进行排序替换;
import re r = '2018-04-10 heyongcan zai xue python' #将文件a中的内容读取到r1变量中 # r1 = open('文件a的存储地址').read() #方法一:按位置排序 #(d{4}):表示匹配4个数字; #(d{4})-(d{2})-(d{2}):表示被替换掉的内容; #():将需把匹配的内容分组,顺序默认为1组,2组,3组; #r:表示此字符串为原始字符串,作用是避免将数字转义; #1:表示第一组的数据:d{4}; #2:表示第二组数据:d{2}; #3:表示第三组数据:d{2}; #/:表示将需要替代上的数据分组; #r'2/3/1':表示将()分的组,从新排序; r2 = re.sub('(d{4})-(d{2})-(d{2})',r'2/3/1', r) print(r2) #输出:04/10/2018 heyongcan zai xue python #方法二:按名字排序 #格式:(?P<year>d{4}):表示第一组的名字为year;g<month>:将名字为month的数据放在第一位置; #P:要大写; r3 = re.sub('(?P<year>d{4})-(?P<month>d{2})-(?P<day>d{2})', r'g<month>/g<day>/g<year>', r) print(r3) #输出:04/10/2018 heyongcan zai xue python