You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python正则表达式移除<>符号间的所有文本?

用Python正则移除尖括号包裹内容的解决方案

没问题,这事儿用Python的re模块就能轻松搞定!核心思路就是匹配所有<和>之间的内容,然后将其替换为空字符串。

具体实现代码

import re

# 原句子
original_sentence = "<S>Today is a <unk> sunny day and <num> children are playing outside </S>"

# 正则表达式:匹配所有<开头、>结尾的内容
pattern = r'<[^>]+>'

# 替换匹配到的内容为空字符串
cleaned_sentence = re.sub(pattern, '', original_sentence)

# 去除可能存在的多余空格(可选优化)
cleaned_sentence = re.sub(r'\s+', ' ', cleaned_sentence).strip()

print(cleaned_sentence)

代码细节解释

  • 正则表达式r'<[^>]+>':
    • < 精准匹配左尖括号;
    • [^>]+ 匹配任意不是右尖括号的字符(^在方括号里表示取反,+确保至少匹配一个字符),这样不会误匹配跨多个尖括号的内容;
    • > 匹配右尖括号,完整锁定一对尖括号包裹的区域。
  • 最后一步的空格处理是可选操作:替换后可能出现连续空格(比如原句中<unk>前后的空格会变成a sunny),这一步能把连续空格合并成单个,同时去除首尾多余空格,让结果更整洁。

运行结果

执行代码后,输出正好是你想要的效果:

Today is a sunny day and children are playing outside

如果你的句子里没有嵌套的尖括号(比如<a<b>>这种复杂场景),这个方案完全够用。要是遇到嵌套情况,再调整正则逻辑就行,但从你的示例来看,这个简单正则就完美解决问题啦!

内容的提问来源于stack exchange,提问作者Crista23

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 09:50:52