質問編集履歴
1
誤字の訂正、追記
    
        title	
    CHANGED
    
    | 
         
            File without changes
         
     | 
    
        body	
    CHANGED
    
    | 
         @@ -2,9 +2,10 @@ 
     | 
|
| 
       2 
2 
     | 
    
         | 
| 
       3 
3 
     | 
    
         
             
            ここに質問の内容を詳しく書いてください。
         
     | 
| 
       4 
4 
     | 
    
         
             
            javaで正規表現による文字列の抽出を行い、変換するコードを書いています。
         
     | 
| 
       5 
     | 
    
         
            -
            例えば「6( 
     | 
| 
      
 5 
     | 
    
         
            +
            例えば「6(iztn2(4i))」について、アルファベットの前の数字はアルファベットを数字分繰り返し、()でくくられているものは()の中身を数字分繰り返したいです。「6(iztn2(4i))」の場合、期待される答えは
         
     | 
| 
      
 6 
     | 
    
         
            +
            「iztniiiiiiiiiztniiiiiiiiiztniiiiiiiiiztniiiiiiiiiztniiiiiiiiiztniiiiiiii」となります。
         
     | 
| 
       6 
7 
     | 
    
         | 
| 
       7 
     | 
    
         
            -
            しかしながら提供したコードで実行すると、返答は「6( 
     | 
| 
      
 8 
     | 
    
         
            +
            しかしながら提供したコードで実行すると、返答は「6(iztn2(iiii))」となってしまいます。
         
     | 
| 
       8 
9 
     | 
    
         
             
            コード内のコメント「ここまでは正しいコード」までのコードは正しいと思われますが、その後の正規表現で何か不具合が起きていると思われます。何が間違っているのでしょうか。
         
     | 
| 
       9 
10 
     | 
    
         | 
| 
       10 
11 
     | 
    
         
             
            ### 発生している問題・エラーメッセージ
         
     | 
| 
         @@ -98,7 +99,7 @@ 
     | 
|
| 
       98 
99 
     | 
    
         | 
| 
       99 
100 
     | 
    
         
             
            「6(iztn6(4i))6(qq)」で試した場合「6(iztn6(iiii))qqqqqqqqqqqq」となり、
         
     | 
| 
       100 
101 
     | 
    
         
             
            「6(iztn6(4i))6(qq2(ai))」で試した場合「6(iztn6(iiii))qqaiaiqqaiaiqqaiaiqqaiaiqqaiaiqqaiai」となりました。
         
     | 
| 
       101 
     | 
    
         
            -
            なぜか最初の()つきのやつだけ拾ってくれないような感じです。
         
     | 
| 
      
 102 
     | 
    
         
            +
            "))"の連続が悪さをしているのかと思ったのですがそうでもなく、なぜか最初の()つきのやつだけ拾ってくれないような感じです。
         
     | 
| 
       102 
103 
     | 
    
         | 
| 
       103 
104 
     | 
    
         
             
            ### 補足情報(FW/ツールのバージョンなど)
         
     | 
| 
       104 
105 
     | 
    
         |