Я хочу проверить, есть ли двойной оператор.Например:
int result = x + y;
приводит к operatorCounter = 2
, это работает.Но:
for(;i<size;i++)
приводит к operatorCounter = 3
, тогда как должно быть operatorCounter = 2
.
Мое регулярное выражение String doubleOperatorPattern = "\'.\\++\'";
Операторы, которые я хочу: (++) (-) (==) (&&) (||)
public void findOperator(String file){
String operatorPattern = "['+''-''*''/''=''<''>''<=''>=''&''|''^''!''\\-?']";
Pattern pattern = Pattern.compile(operatorPattern);
Matcher matcher = pattern.matcher(file);
while (matcher.find()) {
operatorCounter++;
}
String doubleOperatorPatternString = "['==''++''--''&&''||']";
Pattern doubleOperatorPattern =
Pattern.compile(doubleOperatorPatternString);
Matcher doubleOperatorMatcher = doubleOperatorPattern.matcher(file);
while(doubleOperatorMatcher.find()){
operatorCounter--;
}
}