2013-02-14 3 views

답변

0

정규식으로 해결할 수 있습니다! 중복 발생을 _과 일치시키고이를 단일 _으로 바꾸십시오. 나는 미리 정의 된 방법이 있다고 생각하지 않는다.

10

를 사용하여 정규 표현식 대체물 :

string.replaceAll("_+", "_") 
+0

음,이 정규식은 분명히 더 좋습니다! – zessx

0

사용 정규식

간단한 방법

str = str.replaceAll("_+", "_"); 

훨씬 효율적인 방법

str = str.replaceAll("_{2,}", "_"); 
0

private static String replaceLetters(String text, char rchar) { 
    String newtext; 
    for(int i=0;i<text.length;i++) { 
     if(text.charAt(i)!=rchar) { 
     newtext = newtext + text.charAt(i); 
     } 
     else { 
     newtext = newtext + newtext.charAt(i); 
     for(int j=i+1;j<text.length;j++) { 
      if(text.charAt(j)!=rchar) { 
      i = j; 
      break; 
      } 
     } 
     } 
    } 
    return newtext; 
} 

죄송합니다 oldschool;)

관련 문제