我怎样才能实现反向匹配,例如
getAllTextMatches $ "foobar bar bl a" =~ pattern :: [String]
会产生一个不是多个空格的字符串列表。
我试过了
getAllTextMatches $ "foobar bar bl a" =~ "(\\s\\s+)" :: [String]
它按预期返回了这个列表:[" "," "," "]
现在我尝试通过以下方式否定表达式
getAllTextMatches $ "foobar bar bl a" =~ "(?!\\s\\s+)" :: [String]
它返回 [""]
而我想收到这个:
["foobar", "bar", "bl", "a"]
或者作为另一个例子,而
getAllTextMatches $ "foobar /* bla */ bar bl a" =~ "/\\*[^*]*\\*/" :: [String]
返回["/* bla */"]
我想收到:["foobar "," bar bl a"]
通过否定"/\\*[^*]*\\*/"