1 回答

TA貢獻1772條經驗 獲得超8個贊
您可以在單字符運算符,和之前定義 the++和其他兩個字符運算符,如+=or -=first 。如果我們遵循Operators 文檔并添加所有 Java 運算符,那么正則表達式會因為轉義而變得討厭:+-=
Pattern pattern = Pattern.compile(
"\\+\\+|--|" + // ++ --
"\\+=|-=|\\*=|" + // += -= *=
"/=|%=|&=|\\^=|" + // /= %= &= ^=
"\\|=|<<=|>>>=|>>=|" + // |= <<= >>>= >>=
"<<|>>>|>>|" + // << >>> >>
"==|!=|<=|>=|" + // == != <= >=
"&&|\\|\\||" + // && ||
"\\+|-|~|!|" + // + - ~ !
"\\*|/|%|" + // * / %
"\\+|&|\\^|\\||" + // + & ^ |
"<|>|=|" + // < > =
"instanceof" // instanceof
);
Matcher matcher = pattern.matcher("for(;i<size;i++)");
int count = 0;
while (matcher.find()) {
count++;
}
System.out.println(count);
但它會找到<并++打印 2。
請注意,這個正則表達式仍然不支持三元運算符? :。
添加回答
舉報