我有一个csv文件,其中一列包含CDATA节。当我尝试在excel中导入数据时,CDATA部分内容内的换行符很少,这会引起问题。我正尝试使用下面的正则表达式来使用Notepad ++删除换行符,但它似乎无法正常工作。
正则表达式
(<!\[CDATA\[|\G(?!\A))((?!\]\]>).)*?\K((\n))
我试图使用捕获组\2
在Notepad ++中替换
感谢您的帮助
答案 0 :(得分:0)
Notepad ++的错误是\A
在正确的位置不匹配。而且,您不需要捕获组。
要解决\A
错误,我们将使用(?!^(?<![\s\S]))
而不是\A
。
^(?<![\s\S])
意味着仅当行前没有字符(以某种方式模拟\A
)时才在行的开头进行匹配。正则表达式:
(?:<!\[CDATA\[|\G(?!^(?<![\s\S]))).*\K\R
注意:(?<![\s\S])
可以在此处替换为(?<!\C)
。