Python:如何调整字符串中文本的格式

案例:修改字符串中日期的表示方式

方案:使用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
复制代码

 

posted @   何永灿  阅读(816)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
点击右上角即可分享
微信分享提示