2012-04-15 3 views

답변

6

당신은 모든 영어/영어 이외의 대문자를 포함하는, 완전히 대체하기

String text2 = text.replaceAll("[^A-Z]", ""); 

으로 @Vic 의견을 시도 할 수 있습니다.

String text2 = text.replaceAll("[^\p{Lu}]", ""); 
+3

OP가 먼저 시도해야합니다. –

+0

출력은 다음과 같습니다. H – heyman

+2

좋습니다.하지만 String을 사용합니다. text2 = text.replaceAll ("[^ \ p {Lu}]", ""); 영어가 아닌 유니 코드 문자에서도 작동하는지 확인합니다. – Vic

1

다음은 문자열에서 for 루프와 해결책 : 그래서 유일한 해결책 정규식을 추가 할 생각

당신이 정규식로 태그 한 이후
String myString = "Hello I Am Heyman"; 
    String outPutString = ""; 
    for(int i = 0; i < myString.length(); i++) { 
     char c = myString.charAt(i); 
     if (Character.isUpperCase(c)) 
     { 
      // it is Capital Letter 
      outPutString += c; 
     } 
    } 
    System.out.println(outPutString); 
+0

감사합니다, 나는 노력하고 있습니다. – heyman

0
Pattern p = Pattern.compile("[A-Z]"); 
Matcher m = p.matcher(textToLookInto); 
String outString=""; 
while(m.find()){ 
outString+=m.group(); 
} 
System.out.println(outString); 

.

+0

outString은 StringBuilder 여야합니다 (더 빨리 올 때 textToLookInto가 더 빠름) –