2012-09-24 3 views
0

가능한 모든 dateFormats와 비교하여 문자열을 검사해야하며 유효한 날짜를 확인해야합니다.문자열을 확인하는 방법은 날짜입니다

내가 직면 한 문제는 입니다. 다른 웹 사이트에서 가져 오는 날짜 형식을 예측할 수 없습니다.. 한 예는 September 21 2012 1255 PM ET이지만 형식이 다를 수 있습니다.

+0

전용 API 요청하십시오. 화면을 긁는 것보다 훨씬 낫습니다. –

답변

1

여러분이 직접 파스 (parse) 메서드를 구현하고 정규식을 사용하여 문자열의 구문 분석 방법을 결정하는 것이 좋습니다. 어느 형식인지 알지 못해서 어떤 형식 으로든 날짜를 파싱 할 것으로 예상해서는 안됩니다.

... 등등

public SimpleDateFormat ParseDate(string s) 
{ 
SimpleDateFormat parsedDate; 
if(s.matches("0?[1-9]|[12][0-9]|3[01])/(0?[1-9]|1[012])/((19|20)\\d\\d")) 
    parsedDate = new SimpleDateFormat("MM/dd/yyyy"); 
else if(s.matches([PATTERN2])) 
    parsedDate = new SimpleDateFormat([DATE PATTERN 2]); 
... 
return parsedDate; 
} 

및 제안 읽기 :

는 개인적으로 나는 (내가 꽤 시간에 자바 코딩 haven't, 다시 다음 있지만) 이런 식으로 뭔가를 구현하는 것이

http://docs.oracle.com/javase/tutorial/essential/regex/
http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html

관련 문제