Regex 查找不以“开始”开头的行;在记事本中++;

Regex 查找不以“开始”开头的行;在记事本中++;,regex,notepad++,Regex,Notepad++,我尝试验证一个CSV文件,其中有换行符问题 我想查找所有不以开头的行。 我正在尝试使用/!^/gim,但是否定不起作用 如何正确地对/^/gim求反?在正则表达式中,!并不意味着求反;相反,您希望用[^]对字符集求反。括号[]表示字符集,如果以^开头,则表示“不是此字符集” 因此,如果您想匹配非双引号的内容,可以使用[^”];如果您不想匹配任何引号,可以使用[^”],等等 使用Notepad++,您应该能够使用以下内容进行搜索,以查找不以“字符开头的行: ^[^"] 如果要高亮显示整行,请使用

我尝试验证一个CSV文件,其中有换行符问题

我想查找所有不以
开头的行。

我正在尝试使用
/!^/gim
,但是
否定不起作用


如何正确地对
/^/gim
求反?

在正则表达式中,
并不意味着求反;相反,您希望用
[^]
对字符集求反。括号
[]
表示字符集,如果以
^
开头,则表示“不是此字符集”

因此,如果您想匹配非双引号的内容,可以使用
[^”]
;如果您不想匹配任何引号,可以使用
[^”]
,等等

使用Notepad++,您应该能够使用以下内容进行搜索,以查找不以
字符开头的行:

^[^"]
如果要高亮显示整行,请使用:

^[^"].*

在记事本++中,您可以使用非常有用的

在您的情况下,您可以尝试以下方法:

^(?!")
如果要匹配整行,请添加
+
{1,7}
或任何内容,例如:

^(?!").*
也将匹配空行

说明部分
^
行开始


(?!regexp)
负前瞻部分:这意味着如果regexp匹配,结果将显示

第1步-匹配行。查找对话框>标记选项卡,您可以为匹配的行添加书签


第2步-删除已添加书签的线条或删除未添加书签的线条。搜索>书签>删除未添加书签的线条或删除已添加书签的线条

@newfurniture我认为令人困惑的部分是V字形(帽子/插入符号)符号有两种含义,具体取决于上下文。要么是“以”开头,要么是“否定”,要么是我误解了?如果我希望它没有特定的组合,该怎么办?例如,我希望在SQL查询中向字段名添加别名,除非有一个集合(在SQL中,您只需使用“table.fieldname as alias”设置别名),所以我有一个正则表达式,但是如何确保它只匹配那些没有别名的正则表达式(OTHERREGEX-HERE)(^([\s]+[Aa][Ss]))似乎不起作用…@MahNas92这听起来似乎值得在网站上提出自己的问题,对于这样的评论来说,答案太大了。@NewFurniture可能稍后会发布,但我可以用C与其他人分享我的工作;我只是制作了一个正则表达式,在这样一个变量中获取最后一个正则表达式模式:([\s]+[Aa][Ss])?),然后我用编程逻辑检查最后一行是否为空,以确定它是否真的匹配…这是一个出色的解决方案我喜欢这个解决方案。谢谢@GauravThank,这是一个通用的方法,可以使用多个字符进行匹配!