Fiz um programa capaz de resolver expressôes matematicas, por
ex:
x ^ 2 + 55 / ( 11 + cos 3 ) = 0
atualmente eu faço isto:
String elementos[] = expressao.split(" ");
mas o usuario tem que colocar extamente 1 espaço entre cada simbolo. Ex : a expressão acima.
se ele digitar:
não funciona, pq tem simbolos que não tem espaço ou tem espaço d+.
então fiz isto:
String elementos[] = expressao.split("\s+");
que resolve o problema de multiplos espaços mas não o de não ter espaço.
Imagino fazer algo assim:
Pattern p = Pattern.compile("[\s+\+\*[cos][sen]]"); //assim por diante.
Matcher m = p.matcher("11 ^ (3 - 9 )*1+ 3");
while(m.find()) {
System.out.print(m.group() + "_");
}
System.out.println("\nend");
mas nâo funciona. Algo q seja capaz de separar simbolos como NUMEROS, cos, sen, tan, +, -, *, /, (,),[,];
Obrigado pela atenção...