악센트 부호 문자를 유지하면서 파일에서 문장 부호를 제거해야합니다. 이 코드를 시도했지만 어떻게 작동하지 않습니다. Eclipse
및 filetext.txt
이 UTF-8
로 설정됩니다Java는 악센트 부호 문자를 유지하는 문자열 (또한 "" "및"모두)의 구두점을 제거합니다.
Expectation: input=> ’'qwe..,rty ‘èeéò’“ ”o" "à output=> qwertyèeéòoà
Effective result: input=> ’'qwe..,rty ‘èeéò’“ ”o" "à output=>’qwerty ‘èeéò’“ ”o" "à
나는 ’“”
기호와이
참고 다른를 제거 할 수 없습니다.
는 유니 코드 문자 클래스를 사용하지 않는import java.io.*;
import java.util.Scanner;
public class DataCounterMain {
public static void main (String[] args) throws FileNotFoundException {
File file = new File("filetext.txt");
try {
Scanner filescanner = new Scanner(file);
while (filescanner.hasNextLine()) {
String line = filescanner.nextLine();
line=line.replaceAll ("\\p{Punct}", "");
System.out.println(line);
}
}
catch(FileNotFoundException e) {
System.err.println(file +" FileNotFound");
}
}
}
:
은 예처럼, 다음을 사용, 문장 부호뿐만 아니라 공백을 대체합니다. 'line = line.replaceAll ("(? U) [\\ p {S} \\ p {P}] +", "");' –