정규식을 사용하여 추가 처리를 위해 채팅 로그 파일에서 데이터를 추출해야하는 Java 프로그램을 작성하고 있습니다. 길). 채팅 로그 스키마는 다음과 같이 정의됩니다. [hh : mm : ss] 문자열.
그러나 데이터를 추출하려는 특정 행은 [hh : mm : ss] < 데이터 1 > 데이터 2의 형식입니다. 내가 추출하고자하는 데이터는 hh : mm : ss, data1 및 data2입니다. 처음에는 사용하기 쉬운 시간을 추출하려고했습니다. Pattern.compile ("(\ d {2} : \ d {2} : \ d {2})
": MM : SS HH를", 데이터 1과 데이터 2를 내가 얻을 때 그것은 괜찮다고
을하지만, 별도로 =는 Pattern.compile (". < (*)>")을 패턴 (P1)을 사용하여 DATA1를 추출한다. 다음 정규식 패턴 (P)를 이용하여 =는 Pattern.compile ("(\의 D {2} \의 D {2}.. \의 D {2}) < (*)> (*)") I h ave 일치하는 것이 없습니다. 그렇다면 목표를 달성하기 위해 어떻게 진행할 수 있을지에 대한 아이디어가 있습니까?regex 및 java를 사용하여 채팅 로그에서 데이터 집합을 가져옵니다.
0
A
답변
1
당신이 당신 자신의 패턴과 일치했다면 모든 것이 좋았을 것입니다. 당신은 시간의 괄호에 대해 잊어 버린다 : [ hh : mm : ss ]. 여기를 참조하십시오 :
는String text = "22:44:55 <data quite much> data 2";
text = text.replaceAll("(\\d{2}:\\d{2}:\\d{2}) <(.*)> (.*)", "replacement");
System.out.println(text);
text = "[22:44:55] <data quite much> data 2";
text = text.replaceAll("(\\d{2}:\\d{2}:\\d{2}) <(.*)> (.*)", "replacement");
System.out.println(text);
이 생성됩니다
replacement
[22:44:55] <data quite much> data 2
그래서 첫 번째 문자열이 일치하고 일초했다 - 없습니다. 예상대로.
아마 패턴을 \\[(\\d{2}:\\d{2}:\\d{2})\\] <(.*)> (.*)
으로 변경해야합니다.
+0
고마워 Boris, 완벽하게 작동합니다. 이제 프로그래밍 과정을 계속할 수 있습니다. 내가 당신 께 신세를지는 거죠 –
관련 문제
- 1. Java를 사용하여 로그에서 특정 패턴 추출하기
- 2. Regex : FFPSEG 로그에서 FPS 얻기
- 3. 로그인 로그에서 가장 최근 IP 주소를 가져옵니다
- 4. Java를 사용하여 거대한 데이터 전송
- 5. Java를 사용하여 달의 집합을 일로 변환하십시오.
- 6. 채팅 및 데이터 구조 통합
- 7. 데이터 집합을 사용하여 gridview 호출
- 8. 데이터 집합을 사용하여 GridView에 데이터 표시
- 9. XMPP java를 사용하여 사용자에게 채팅 초대장을 보내는 방법은 무엇입니까?
- 10. Couchdb는 두 사용자 간의 채팅 기록을 가져옵니다.
- 11. Java를 사용하여 Memcache에서 영역 만들기
- 12. RegEx Expression을 사용하여 TextBox 데이터 유효성 검사
- 13. 긴 다중 사용자 인터넷 채팅 로그에서 특정 사용자를 어떻게 인식합니까?
- 14. RegEx - 텍스트 문자 다음의 모든 숫자를 가져옵니다.
- 15. 데이터 집합을 ListItem으로 변환
- 16. 소켓 및 Java 채팅
- 17. PostgreSQL의 열에있는 기존의 모든 값 집합을 가져옵니다.
- 18. Java를 사용하여 POST 데이터 가져 오기
- 19. Java를 사용하여 XMl 데이터 가져 오기
- 20. Java를 사용하여 MySql의 큰 데이터 처리
- 21. Java를 사용하여 데이터 흐름 다이어그램을 만드는 방법
- 22. Java를 사용하여 Google Weather API에서 데이터 추출
- 23. 사용자가 특정 값 집합을 입력하게하는 Regex
- 24. Regex - 두 번째 태그 집합을 선택하지 마십시오
- 25. JAVA를 사용하여 오디오 파일 암호화 및 왜곡
- 26. 데이터 집합을 XSLT로 변환
- 27. ASP.Net - 데이터 집합을 사용하여 행을 삭제하는 방법
- 28. PHPUnit 데이터 집합을 사용하여 메서드에서 select 테스트
- 29. 데이터 집합을 사용하여 데이터베이스를 업데이트하려면 어떻게합니까?
- 30. Java regex - 문자열의 특정 부분을 가져옵니다.
데이터 샘플을 제공 할 수 있습니까? –