2012-11-01 2 views
2

자바에서 regex를 사용하여 휴대 전화 번호의 문자열에서 재미있는 문자를 바꾸려고했지만 그 사이에 '-'를 제거 할 수없는 것 같습니다. 숫자내 정규식은 자바 숫자의 대시를 제거하지 않습니다

여기

내 코드, 그것은 여전히 ​​허용됩니다 65-12345678

// Remove all (,),-,.,[,],<,>,{,} from string 

myMobileNumber.replaceAll("[^\\d]", ""); 

예 - 멀리 삭제하지 않고 통과 할 수 있습니다. = (

답변

5

당신은 문자열 불변의 객체입니다. 결과를 재 할당해야하고, .replaceAll을 포함한 모든 방법을 수정하지 않습니다.

myMobileNumber = myMobileNumber.replaceAll("[^\\d]", ""); 

을 (BTW, 패턴 "\\D""[^\\d]"에 해당합니다.)

+0

고마워요 !!!! 작동합니다 !!! – user1755298

+0

왜 귀하의 답변을 투표 할 수 없었습니다 = ( – user1755298

관련 문제