正则表达式代码格式

时间:2012-01-25 10:38:50

标签: regex string replace quotes

我想在我的文字中添加半昏迷后的换行符。

replace(";",";\n\r")

这样的东西

但是我需要在双引号内排除半昏迷,我怎么能用正则表达式来做呢?

如果是报价,我想要这个替代品:

var="Hello;World";
var="Hello;World";\r\n

而不是这个:

var="Hello;World";
var="Hello;\r\nWorld";\r\n

揍你!

1 个答案:

答案 0 :(得分:1)

您可以执行以下操作:

s/;(?=[^"\n]*(?:"[^"\n]*"[^"\n]*)*$)/;\n/gm; # perl synax

如果字符串中没有转义引号,并且字符串不跨越多行。

那就是取代:

;(?=[^"\n]*(?:"[^"\n]*"[^"\n]*)*(?m:$))

;\n