替换'('with'(''如果它不在引号内

时间:2014-08-18 15:49:42

标签: regex replace regex-negation

假设我有一些这样的文字:

(what)

"(what)"

如果(不在引号内,我试图将([space]替换为( what)
因此,在替换后,第一个字符串应如下所示:

[^"]\([^"]

,不应更改第二个字符串。

我试过了{{1}},但它没有用。

3 个答案:

答案 0 :(得分:1)

您可以使用外观来帮助自己。

您可以使用此正则表达式:

^(?!").*(\()

<强> Working demo

不过,您还可以使用丢弃技术:

.*?".*?".*?|(\()

<强> Working demo

答案 1 :(得分:0)

您可以尝试前瞻和后视

(?<!")\(([^)]+)(?!\)")

替换为( $1

Online demo

答案 2 :(得分:0)

使用Notepad ++尝试此方法 第一次 替换“((((paretse flow by space)

第二次替换)“有空间”

并且可以正常工作