我想匹配多点通用表达式但是,如果它们在排队的位置,请忽略它们:
- inside a particular string like 'consts'
- inside a comment
- inside a quoted string
所以我不想在这3行上匹配任何内容
a.b.consts.d.e
comment line 'a.b.c.d
quote line "a.b.c.d"
,但要匹配这3行的一部分
asdf a.b.c.d
a.b c.d .e c.d.e
long a.b.c.d.e.f.g
我尝试了一个数字lookahead/shower/partivations的想法,并以部分成功,但没有一次遇到所有条件。
请参阅此处的一个正则尝试,该尝试使用上面的描述文本作为要匹配的实际文本:https://regex101.com/r/dsinus/6
由于[a-z.s]*
,在许多情况下,此表达式可能会失败,但是它可能会提供不同的观点,即我们如何开始解决这个复杂的问题,但我不确定会有什么需要或不希望的:
^(?!(.*["'])|(.*[a-z].consts.[a-z].*))[a-z.s]*$
demo
这可以帮助您,这有点复杂,但可以完成工作
^b((?!.w{2,}.)[^"'])+(s*w{1}s*.)+w$
https://regex101.com/r/dsinus/7