首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >python正则表达式-匹配用符号分割的多个字符串

python正则表达式-匹配用符号分割的多个字符串

作者头像
西西嘛呦
发布2021-01-18 10:07:39
发布2021-01-18 10:07:39
1.4K00
代码可运行
举报
运行总次数:0
代码可运行

代码

代码语言:javascript
代码运行次数:0
运行
复制
import re

text = "今天我玩了英雄联盟的很多英雄,比如“德玛西亚”、“德玛西亚皇子”、“德邦总管”等等,我玩了穿越火线的许多枪,比如“巴雷特”、“马来剑”等等。"
pattern = r"比如[\“]([\u4e00-\u9fa5])+[\”](、[\“]([\u4e00-\u9fa5])+[\”])*"
res = re.finditer(pattern, text)
print(res)
for span in res:
    origin_text = span.group()
    print(origin_text)
    start = text.index(origin_text)
    match_text = re.sub("比如|\“|\”","",origin_text).split("、")
    for wg in match_text:
        cur_start = origin_text.index(wg)
        abs_start = start + cur_start
        abs_end = abs_start + len(wg)
        print(wg, abs_start, abs_end)

结果

代码语言:javascript
代码运行次数:0
运行
复制
<callable_iterator object at 0x000002787DEB3C50>
比如“德玛西亚”、“德玛西亚皇子”、“德邦总管”
德玛西亚 18 22
德玛西亚皇子 25 31
德邦总管 34 38
比如“巴雷特”、“马来剑”
巴雷特 57 60
马来剑 63 66
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-01-13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 代码
  • 结果
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档