使用正则表达式,仅当模式不在行首附近时,我才想在其后面使用负向后匹配。这是为了匹配紧随其他文本之后的VHDL注释,而不是匹配行首附近的注释(即,除空白之前没有其他文本)。
例如,如果我的测试字符串是:
-- BOL
test; -- C1
test => -- C1
-- BOL indent
我想要一个正则表达式字符串:
(?<!^\s*)--
仅匹配两个“ C1”前面的“-”,而忽略“ BOL”和“ BOL缩进”前面的“-”。但这需要在后面进行可变长度的查找,此正则表达式工具不支持。问题源于不知道缩进将要占用多少空间。
有更好的方法吗?