如何拆分含时间标记的长字符串,获取独立条目内容?
拆分含时间标记字符串的最优方案
给定字符串 'Productivity & Costs (Preliminary)(08:30)Consumer Credit Panel(11:00) ',要拆分为两个独立条目,最优方案是利用正则表达式直接匹配符合「内容+(HH:MM)时间标记」结构的子串,具体实现如下:
方法说明
每个目标条目都以(XX:XX)格式的时间标记结尾,通过正则的非贪婪匹配,可以精准提取所有符合该结构的完整条目,避免拆分错误。
代码示例(Python)
import re original_str = 'Productivity & Costs (Preliminary)(08:30)Consumer Credit Panel(11:00) ' # 正则模式:匹配任意字符(非贪婪),直到遇到(HH:MM)格式的时间标记 entry_pattern = r'.*?\(\d{2}:\d{2}\)' # 去除原字符串首尾空格后提取匹配项 entries = re.findall(entry_pattern, original_str.strip()) print(entries) # 输出结果: # ['Productivity & Costs (Preliminary)(08:30)', 'Consumer Credit Panel(11:00)']
正则模式解释
.*?:非贪婪匹配任意字符,确保匹配到最近的时间标记就停止,不会过度匹配整个字符串\(\d{2}:\d{2}\):精准匹配(XX:XX)格式的时间标记,其中\d{2}匹配两位数字,\(和\)是转义后的括号(因为括号在正则中是特殊字符)
内容的提问来源于stack exchange,提问作者2015samtaylor
相关产品推荐
相关产品推荐

