2016-10-25 4 views
-1

私は複合語HELLOWorldを持っており、helloWorldになるにはラクダにする必要があります。 .toUpperCase()または.toLowerCase()を使用して、ラクダのケースに変換すると、2つの単語がどこで区別されるかを知る方法がありません。私は複合語がどんなものであろうとこれを使うことができる必要があります。 2つの単語の長さに一貫性はありません。すべての場合、最初の単語はすべて大文字で、2番目の単語は最初の文字が大文字になります。この "HELLOWorld"とまったく同じように見える合成作業をhelloWorldにする方法

+0

:これは、次のような、私は正規表現で何かをしようとするだろう

skozlov

答えて

0

あなたはまた、私はこの

public static void main(String[] args) 
{ 

    String oldWord= "HELLOWorld"; 
    int size=oldWord.length(); 
    int count=0; 
    for(int i=0;i<size;i++) 
    { 
     char c = oldWord.charAt(i); 
     int ascii = (int)c; 
     if(!(ascii>=65 && ascii <=90)) 
     { 
      count=i; 
      break; 
     } 
    } 
    String newWord= oldWord.substring(0, count-1); 
    System.out.println(newWord.toLowerCase()+oldWord.substring(count-1,size)); 
} 

Nを試してみました を求める前に何かをしようとする必要があります:

Pattern regex = Pattern.compile("[A-Z](?=[^A-Z])"); 
Matcher match = regex.matcher(yourString); 
String camelCase; 
if(match.find()) 
{ 
    int start = match.start(); 
    camelCase = yourString.substring(0, start).toLowerCase().concat(yourString.substring(start); 
} 
0
それほど汎用的ではありません正規表現を試しましたか?
関連する問題