Python正则如何用单条规则匹配两类场景提取指定文本?
单条正则适配方案
可以实现,给出可用正则:^\d+\.\s*(.*?)\s*(?:- Comments:|$)
规则说明
- 开头
^\d+\.\s*匹配序号、英文句号及后面的空白字符,无需捕获 - 中间
(.*?)为非贪婪匹配的捕获组1,就是你需要的目标文本内容 - 末尾
(?:- Comments:|$)是非捕获的边界匹配:要么命中- Comments:标记,要么命中文本结尾,两种场景都能覆盖 - 两组
\s*是为了自动剔除目标文本前后的多余空格,不需要的话可以删掉
测试效果
- 输入
1. 待提取文本A - Comments: 注释内容,捕获组1输出:待提取文本A - 输入
2. 待提取文本B,捕获组1输出:待提取文本B
内容的提问来源于stack exchange,提问作者Surendiran R
相关产品推荐
相关产品推荐

