내 컴퓨터에 (ANSI) 텍스트 파일 (filters.txt)이 있습니다. 각 줄마다 정규 표현식을 사용합니다.Readline과 regex가 일치하는 데 문제가 있습니다.
내 주에서는 RSS 피드를 반복합니다. 각 항목은 filters.txt에서 일치하는 항목을 확인하기 위해 다른 메소드로 전달됩니다.
문제는 아무것도 일치하지 않는 것 같습니다.
- 나는 방법에 전달하고있어 문자열은 올바른 (테스트)
- 내 regexps '에 "는 것 같다"텍스트 파일에서와 동일하게 filters.txt를에서 올바른 (테스트)
- 입력입니다
- 아마도 줄 바꿈이나 다른 것이 패턴 일치를 망칠 것입니까? 텍스트 파일을 읽으려면 다른 도구를 사용해야합니까? 12 [720 -
\\[HorribleSubs\\].*Chihayafuru.*
가 일치해야 하는가
"[HorribleSubs] 치하야 후루을 :이public static boolean filtermatch(String rsstitle) { boolean result = false; try { BufferedReader br = new BufferedReader(new FileReader("filters.txt")); String strLine; while ((strLine = br.readLine())!= null && result == false) { if(Pattern.matches("(?i)" + strLine, rsstitle)) { result = true; } } br.close(); } catch (Exception e) { System.err.println("Error: " + e.getMessage()); } return result; }
편집 : 만 내가 지금에이 필터 여기
내 메소드의 코드입니다 ] .mkv "아직 그렇지 않습니다. 비록 내가 프로그램에서 정규식을 정의한다면 그것을 일치시킵니다.
몇 가지 예가 도움이 될 수 있습니다. –
추가됨. < – lelouch
'새 FileReader ("filters.txt", "Cp1252")는 파일이 Windows 코드 페이지 1252 (Latin1의 Windows 변형)에 있음을 명시 적으로 나타냅니다. 이제는 운영 체제 기본값을 사용합니다. –