파이프로 구분 된 값으로 각 줄이있는 파일을 구문 분석하려고합니다. 분할 방법으로 파이프 구분 기호를 이스케이프하지 않으면 올바르게 작동하지 않지만 다음과 같이 파이프를 이스케이프 한 후에는 올바르게 작동했습니다.
private ArrayList<String> parseLine(String line) {
ArrayList<String> list = new ArrayList<String>();
String[] list_str = line.split("\\|"); // note the escape "\\" here
System.out.println(list_str.length);
System.out.println(line);
for(String s:list_str) {
list.add(s);
System.out.print(s+ "|");
}
return list;
}
누군가 파이프 split()
방법을 이스케이프 처리해야하는 이유를 설명해 주 시겠습니까?
–1
—
redDevil
Pattern.quote
String
와 정규식 반환String
(그것은 모두 당신을 위해 탈출을 담당, 즉) 입력을 일치합니다.