所以我正在读取一个文件,我需要计算该文件中逻辑运算符的数量,根据此处的建议,我尝试使用正则表达式,但我正在使用的是:
Regex reg = new Regex(@"/and|x?or|&&|[<>!=]=|[<>&!]|\|{1,2}/gi");
返回匹配的所有内容,例如它返回任何带有 "or"
的变量在里面,或者如果我有一个 "<="
operator 它将其视为两个独立的运算符(分别为“<”和 "="
)。
此时我是否应该使用正则表达式,因为它似乎对我的情况没有帮助。
最佳答案
为了匹配<=
而不是 <
就是使用条件表达式:
(<=|<|>=|>)
它将首先尝试匹配 <=
首先,如果成功,它不会检查 <
.
同样适用于 >=
和 =
.
匹配or
,但不是文字,您可以使用环视来确保它是独立的(将此模式添加到上面):
(<=|<|>=|>|(?<=[^a-zA-Z])or(?=[^a-zA-Z]))
尝试 demo .
关于c# - 试图找到文件中逻辑语句的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53695480/