2011-01-16 7 views

답변

14

split은 정규식을 취합니다. 시도하십시오 split("\\.").

+1

중복으로 생각하는 것이 좋지만 대답하는 것이 더 빠릅니다.) –

+0

+1, 또는 StringUtils.split -> http://commons.apache.org/lang/api-2.5/org/apache/commons/lang /StringUtils.html#split(java.lang.String,%20char) – unbeli

+0

그들은 splitByRegex를 호출하고 String을 취하는 간단한 split 메소드를 유지해야합니다! 거의 모든 자바 개발자는 한 번이 시간을 잃어 버렸습니다 ... 이것은 최소한의 놀라움의 원칙을 존중합니다. –

2
String a = "a.jpg"; 
String str = a.split(".")[0]; 

split은 정규 표현식 인수와 "."을 허용하기 때문에 ArrayOutOfBoundException을 발생시킵니다. 모든 문자를 나타내는 정규 표현식의 예약 된 문자입니다. 는 대신, 우리는 다음과 같은 성명 사용해야합니다 ". \"코드가 컴파일 될 때

String str = a.split("\\.")[0]; //Yes, two backslashes 

, 정규식으로 알려져있다, 우리가 원하는 무엇을하는 여기에

링크입니다 내 오래된 블로그 게시물에 관심이있는 경우 : http://junxian-huang.blogspot.com/2009/01/java-tip-how-to-split-string-with-dot.html

관련 문제