怎么通过正则表达删除含中文的括号部分但保留含英文的括号部分?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么通过正则表达删除含中文的括号部分但保留含英文的括号部分?相关的知识,希望对你有一定的参考价值。

正则表达式,删除含中文括号部分,保留含英文的括号部分。
it seemed to me she(玛丽) knew more about the (outside) world than anyone,
but it was a world Siam(塞姆) was afraid would consume them. 、
注意:括号有半角也有全角。
请测试有效后再回答,谢谢!

正则表达式如下图(注意小括号是中文小括号,其它是英文字符)

我给你一个php语言的例子,你看看吧.

参考技术A

1、EmEditor默认情况下用的是Boost.Regex正则引擎,搜索汉字可以尝试匹配双字节字符(包括汉字在内)的[^\\x00-\\xff]

例如:

(\\(|\\()[^\\x00-\\xff]+(\\)|\\))

2、如果在搜索框的“高级”设置值修改正则引擎为Onigmo,则可以用常规的表达式:

(\\(|\\()[\\u4E00-\\u9FFF]+(\\)|\\))


设置如下图:

本回答被提问者采纳
参考技术B 如果需要保留的括号里面只有英文的话,查找:(\(|()[^a-zA-z ]*(\)|)),替换:空 参考技术C

(\\(|\\()[\\u4E00-\\u9FFF]+(\\)|\\))

追问

谢谢。我在emeditor文本编辑器上面试了下,三组括号全匹配了,是什么原因?

追答

我也喜欢用 emeditor
具体能匹配上的原因我也没弄明白

大概是正则在emeditor有什么兼容问题?不懂

参考正则匹配中文的规则 我能想到的只能用这个表达式

以上是关于怎么通过正则表达删除含中文的括号部分但保留含英文的括号部分?的主要内容,如果未能解决你的问题,请参考以下文章

如何在正则表达式公式中包含括号作为谷歌表格中公式的一部分

mysql全文匹配搜索字串中含圆括号()怎么办?

js 正则表达式获取小括号内的内容,不含括号

在正则表达式字符括号中包含连字符?

pyspark:删除作为另一列值的子字符串,并从给定列的值中包含正则表达式字符

如何使用正则表达式匹配 Ruby 中包含特殊字符的重复模式?