如何在字符串

时间:2018-02-20 22:47:10

标签: regex windows notepad++ regex-lookarounds

我有一组看起来像这样的数据:

"20180214T12:34:56";"0012345";"Data goes here";"1-ZZZZZ"
"20180215T12:44:56";"0012317";"Data "goes here";"1-ZZXXZ"
"20180217T12:36:56";"0012355";"Data "goes" here";"1-ZZTRZ"

我试图使用RegEx查找"的任何实例。 (双引号)仅包含在"数据在这里"部分数据。真正的诀窍是找到无与伦比的"引号。理想情况下,此RegEx表达式将仅返回第二行,但如果我们可以使其仅返回第二行和第三行,那么这也是可接受的。

我尝试使用像\w\D"之类的东西(但我不能保证引号永远不会以数字开头)或"(?!\w)(但那是' s通常在数据集的开头返回第一个引号。)

您可以提供任何指示?

我找到了以下链接:

Regex to find missing double quote in csv 这个返回数据集中的所有行。

Regex match double quote, but not pair of double quotes 这一行返回该行中的其他引号。

编辑:(?<![;\n\r])(?<!^)"(?![;\n\r])(?!$)这是为了找到&#34;数据在这里&#34;部分。但是,我仍在努力只返回带有多个引号实例的行。

1 个答案:

答案 0 :(得分:0)

最好的方法是匹配预期的双引号然后是意外的引号。你可以这样做:

搜索:

(?:^"|";"|"$)\K|(")

替换为零。

<强> Live demo