Найти математических операторов в строке Java?JAVA

Программисты JAVA общаются здесь
Anonymous
Найти математических операторов в строке Java?

Сообщение Anonymous »

Я хочу иметь возможность сказать, является ли строка математическим выражением или нет.
Истинный характер моей проблемы состоит в том, чтобы найти символы, которые не совпадают с какими -либо из них: *, /, +, -, (,), 0-9 в любой заданной строке. < /p>

, -, (,), 0-9.if (Pattern.compile("[a-z]").matcher(inputExpression).find()) {
return ErrorType.ALPHABETIC_SYMBOL;
} else if (!inputExpression.matches("[-+*/()]") || !inputExpression.matches("[0-9]")) {
return ErrorType.UNKNOWN_SYMBOL;
}
< /code>

Что я делаю не так? Программа работает, если я удаляю второе, if-statement, и ожидаю найти алфавитные символы в моей строке.if (Pattern.compile("[a-z]").matcher(inputEquation).find()) {
return ErrorType.ALPHABETIC_SYMBOL;
} else if (!Pattern.compile("[-*+/]").matcher(inputEquation).find() && !Pattern.compile("[0-9]").matcher(inputEquation).find()) {
return ErrorType.UNKNOWN_SYMBOL;
}
< /code>

Код все еще не работает. У меня логические ошибки.

Подробнее здесь: https://stackoverflow.com/questions/447 ... ava-string

Вернуться в «JAVA»