그래서 자바 기반의 텍스트 기반 계산기를 만들려고 노력하고 있지만 스캐너는 나에게 두통을주고 있습니다. 여기에 코드 snipit ...수학 텍스트와 너무 많은 토큰이있는 스캐너 문제
Scanner input=new Scanner(in);
while (input.hasNext()){
System.out.print(input.next()+".");
}
System.out.print("\n");
내 입력이입니다입니다 : "1 + 케이크 (3,4,6,10 * 30 + 죄 (4)) * 3" 내 출력이 있어야한다 : "1 +. 케이크 (3,4,6,10 * 30 + sin (4)). * .3."
스캐너는 공백 만 토큰해야합니다. 그러나 이것은 내가 얻은 것입니다. "1. +. cake (.3., .4., .6., .10. .30. +. 죄. (.4.).). .3. "
모든 공간을 제거하지만 구두점의 모든 단어, 숫자 및 비트를 구분합니다! 이제 숙제를하고 input.useDelimiter (String in)를 사용하여 다양한 구분 기호를 시도했습니다. "\ s" "\ s +" "\ s *" "\ s * +" "[]"등의 많은 것들이 사용되었습니다. 내가 도대체 뭘 잘못하고있는 겁니까!?!?!?!?!
input.useDelimiter ("\\ s +"); //이 바로 위에 놓습니다. –
예, input.useDelimiter ("XXXXX"); 나는 바로 거기에 사용했다. 여기서 XXXXX는 내가 열거 한 것들 중 하나이다. 웬일인지 내가 앞에있는 여분의 슬래쉬를 제거했다. 심지어 줄마다 문자를 인쇄하는 스팅을 통해 놀랍게도 깜짝 문자가 없는지 확인했습니다. –
시도해 보셨습니까 .. String [] tokens = in.split ("\\ s +"); –