正则表达式去除文本中括号()<>[]里的内容

一行文本中包含有各种括号,如()、<>、[],我们希望把括号及括号内的内容0去除,可以通过正则表达式来实现。

匹配()

python 复制代码
pattern = r'\([^)]*\)'  # 匹配()

匹配一个左括号(,然后匹配0个或多个不是右括号的任意字符[^)]*,最后匹配一个右括号())。这样就可以匹配出括号里的内容。

匹配<>

python 复制代码
pattern = r'\<[^>]*\>'  # 匹配<>

匹配[]

python 复制代码
pattern = r'\[[^]]*\]'  # 匹配[]

示例代码

python 复制代码
import re

text_1 = '(A)hello () world (end)'
text_2 = '<A>hello <> world <end>'
text_3 = '[A]hello [] world [end]'

pattern_1 = r'\([^)]*\)'  # 匹配()
pattern_2 = r'\<[^>]*\>'  # 匹配<>
pattern_3 = r'\[[^]]*\]'  # 匹配[]


valid_text_1 = re.sub(pattern_1, '', text_1).strip()
valid_text_2 = re.sub(pattern_2, '', text_2).strip()
valid_text_3 = re.sub(pattern_3, '', text_3).strip()

print(valid_text_1)
print(valid_text_2)
print(valid_text_3)

输出如下:

复制代码
hello  world
hello  world
hello  world
相关推荐
张人玉8 分钟前
C# 常量与变量
java·算法·c#
Java技术小馆22 分钟前
GitDiagram如何让你的GitHub项目可视化
java·后端·面试
tan77º24 分钟前
【Linux网络编程】Socket - UDP
linux·服务器·网络·c++·udp
Codebee38 分钟前
“自举开发“范式:OneCode如何用低代码重构自身工具链
java·人工智能·架构
程序无bug1 小时前
手写Spring框架
java·后端
程序无bug1 小时前
Spring 面向切面编程AOP 详细讲解
java·前端
全干engineer1 小时前
Spring Boot 实现主表+明细表 Excel 导出(EasyPOI 实战)
java·spring boot·后端·excel·easypoi·excel导出
Fireworkitte1 小时前
Java 中导出包含多个 Sheet 的 Excel 文件
java·开发语言·excel
szxinmai主板定制专家2 小时前
【精密测量】基于ARM+FPGA的多路光栅信号采集方案
服务器·arm开发·人工智能·嵌入式硬件·fpga开发
GodKeyNet2 小时前
设计模式-责任链模式
java·设计模式·责任链模式