正则表达式匹配问号,重复或评论除外( - )

时间:2016-12-09 02:54:12

标签: regex

我想在C#中构建一个正则表达式来匹配问号,除了重复或评论。 例如,如果我有一个字符串

STRINGNO:

,我想匹配如下(*字符之间)。

--???
??
asdlfkj --?
asldfjl -?
aslfldkf --?
aslfkvlv --??
?
-?
dklsafdlafjd = ?

我正在使用2个参数开发SQL绑定方法。

第一个是SQL,例如

--???
??
asdlfkj --?
asldfjl -*?*
aslfldkf --?
aslfkvlv --??
*?*
-*?*
dklsafdlafjd = *?*

SQL可以有注释,所以我想忽略它们。

第二个是SQL的参数作为Array顺序匹配;

有人对此有好主意吗?

1 个答案:

答案 0 :(得分:1)

如果你可以否定这个正则表达式它应该适合你:

(\?{2,}|(?<=--)\?)

我不知道您正在使用哪种语言,但您应该能够filter逐行。将此正则表达式应用为谓词,并将其否定或使用exclude函数。

我会将这些实施细节留给您。