正则表达式通配符

时间:2017-02-16 18:14:18

标签: regex

对于我来说,对于正则表达式来说这是001天所以很抱歉,如果这有点愚蠢,我做了一些研究,但找不到我的问题的答案;可能只是因为我在寻找错误的东西。

我有一个巨大的.CVS文件,我想删除包含术语的所有条目:

Subscribe to Newsletter:         No

条目不统一 - 我的意思是

--

Anything could be here

Subscribe to Newsletter:         No

--

我已经使用正则表达式(我认为?我在Sublime 3中使用查找和替换)将这个.CSV简化为删除我能够的所有元素,我几乎就在那里。我正在寻找的是一种使用通配符来忽略我不知道的部分的方法;像这样:

^.*--

**wild-card**

Subscribe to Newsletter:         No.*\n 

如果有人可以推荐我可以研究如何做到这一点,这将是非常棒的,正如我所说,我可能会在这里很好,因为它实际上是第1天,所以如果有人能指出我正确的方向那将是伟大的!< / p>

1 个答案:

答案 0 :(得分:1)

第1期:除非您使用DOTALL标记,否则点.不会与换行符匹配 - 您需要跨越多行。

您需要一个负向预测(?!--)来断言点不匹配分段分隔符--

试试这个:

(?s)^--((?!--).)*?Subscribe to Newsletter:\s+No((?!--).)*

您不需要尾随换行符,因为该点将与启用的dotall标志(?s)匹配。