• 締切済み

教えてください

tachiwaの回答

  • tachiwa
  • ベストアンサー率34% (25/73)
回答No.2

無理やりlength()を使うと class Henkan001 { public static void main(String[] args){ String msg = new String("ABCDEFG"); int len = msg.length(); String msg01 = msg.substring(len-len,len-4); System.out.println(msg01); String msg_last = msg.substring(len-1,len); System.out.println(msg_last); } }

関連するQ&A

  • 配列

    String型の配列の中の文字列の文字数を数える方法で困っています。 問題は、int型の変数lenで与えられた数字よりも大きい文字数の文字列はいくつあるか調べます。 例) stringsLongerThan({"a","ab","abc"}, 0) 3つ全ての文字列の文字数は0より大きいので3を返す stringsLongerThan({"a","ab","abc"}, 2) "abc"の文字数が2より大きいので1を返す stringsLongerThan({"a","ab","abc","abcd","abcde","abcdef","abcdefg"}, 3) "abcd","abcde","abcdef","abcdefg"の4つが文字数3より大きいので4を返す 途中まで組んだのですが、配列array[]の中の文字列の文字数を数えるにはどうしたらよいのでしょうか? public int stringsLongerthan(String[] array, int len){       int result=0;      for(int i=0;i<array.length;i++){        //ここで配列array[i]の文字列の文字数を数える       int count=文字数;       if(cont>len)        result++;     }      return result; } 宜しくお願いします。

    • ベストアンサー
    • Java
  • アセンブリ言語のラベルについて

    MASMアセンブラを使ってアセンブリ言語の勉強を始めました。 ラベルについてなのですが、以下のようなコードがあります。 msg db "ABCD" これは、msgという名前でメモリに4バイト確保して文字列で初期化するということだと分かりました。 そこで質問なのですが、msgというのはこの文字列の先頭アドレスを表すということですが、このmsgは上記の"ABCD"のようにメモリに領域を確保されて保存されているものなのでしょうか(C言語のポインタのようなもの)。 それとも、即値のように直接ソースコード上に書かれているものなのでしょうか。(つまり、アセンブルをするとソースコード上のmsgが"ABCD"の先頭アドレスに置き換わるようなことがおこるのでしょうか) 言葉足らずですみませんが、よろしくお願いします。

  • Perlで一行で文字列の置き換え

    Perlでたとえば 文字列を$a = "abcdefg";を $a = "あdefg";と 先頭のabcをあに置き換える方法を1行の文で行いたいのですが可能でしょうか? 2行以上でなく、1行で済ませる方法です。 $b = "abcい";なら "あい"となってほしいです。

    • ベストアンサー
    • Perl
  • 文字列比較

    最長10文字の文字列を2件入力し、char型の配列にそれぞれ格納する。2つの文字列を比較し、文字列が同じだったら「equal」を表示し異なっていたら「Not equal」を表示するプログラムを作成せよという課題が出ました。 条件として、11文字以上の文字が入力されたら、先頭から10文字までを有効とし、11文字目以降を無視する。下記のプログラムで文字列1に11文字以上入力すると、うまく動きません。なぜ、うまくいかないかと、どうなおしたらよいかを教えてください。 #include<stdio.h> #include<string.h> #define max_length 10 void get_string (char *p_str, int size); int main() { char string1[max_length+2]; char string2[max_length+2]; printf("文字列1:"); get_string(string1,max_length+2); printf("文字列2:"); get_string(string2,max_length+2); if(!strncmp(string1,string2,max_length)) puts("equal"); else puts("Not equal"); } void get_string (char *p_str, int size) { fgets(p_str,size,stdin); }

  • 正規表現検索

    Javaのソースコード内から特定の単語を検索したいのですが、 このとき、以下の条件があります。 (1)ブロックコメント内を無視する (2)行コメント内を無視する (3)変数文字列内を無視する 01 /* 02 * ここの abc はブロックコメント内なので無視する 03 * 04 */ 05 public class Foo() { 06  private int abc = 0; 07 08  public Foo() { 09   // 行コメント内なのでここの abc を無視 10   abc = 1; 11   String s = "変数文字列内の abc これも無視"; 12  } 13 14  public String get() { 15   return " 1'23\" abc " + abc; // この場合後ろの abc のみヒット 16  } 17 } 例えば、上記のテキストで abc を検索したとき、 6、10と15行目の後ろの3箇所のみヒットさせたいのですが、 これはどのように正規表現で記述すればよいのでしょうか。 /* で始まり、*/ が記述されるまでがブロックコメントです。 // があったら、その行末までが行コメントです。 " で囲まれた中が変数文字列です。文字列内の \" は無視します。 よろしくお願いいたします。

    • ベストアンサー
    • Perl
  • エクセルVBAでwebのソースコードを検索&取得

    webページのソースコードを検索して、検索した文字列に続く3文字を取得したいです webページのソースコードが下記だと仮定します (ソースコード)   AAA   ABC***   BBB   CCCAAA ABC という文字列を検索して、***という変数を取得したいです ***の部分は毎回変わる、英数字のランダムな文字です 説明が下手で申し訳ありません どの様に取得すればよいかわかりません どうぞよろしくお願い申し上げます

  • JCLでの文字列操作

    jclで、ある変数に取得した文字列(例えばabcdefg)の最初の4文字だけとって、それに別の文字列(例えば20090716)をくっつける・・・なんてことはできないでしょうか? 手元にマニュアルがなく、ネットでいろいろ検索しているのですが、調べることができずに困っています。よろしければお願いします。

  • HTMLについて

    HTMLについて分からない事がありますので、ご教授願います。 <INPUT TYPE=TEXT NAME=TEST VALUE="abc"def"> 上記のように、テキストボックスに「abc"edf」を初期表示させる1文を書きました。 しかし、「abc」しかテキストボックスには初期表示されません。 原因は「abc」の次にある「"」がVALUEに代入する文字列の最後とみなされている ためなのですが、文字列中の「"」を文字として認識させて「abc"def」と初期表示 させたいのですが、何か良い方法はないでしょうか? 実は、powerscriptでプログラミングをしています。 そのため、VALUEに指定する文字列は変数を指定していますので、 「VALUE=''」にしてもその変数に「'」が入力されていたら同じ現象が生じてしまいます。 なんとか、「"」を文字として認識させる方法はないのでしょうか?

  • VBAのInstrについて

    webページのソースコードを変数に代入し、 その中から<td class="abc">という文字列の位置を取得したいので hogehoge = Instr(baf,"<td class="abc">")と指定すると""の部分でエラーになってしまいますので ""をutf-8にあらかじめ変換し、%22で囲ってみました hogehoge = Instr(baf,"<td class=%22abc%22>") これでエラーはでませんが、これではソースコードから該当の文字列が探せません。 Instrで指定の文字の位置を取得したいが、その文字列内に「"」が含まれている場合、 どのようにすれば正常に取得できるでしょうか? よろしくお願いします。

  • Stringクラスの変数の格納アドレスを知りたい

    いつもお世話になります。 Javaの文字列クラスのStringは参照型ですが、この変数の値が格納されたアドレスを知るためにはどうすればよいのでしょうか。eclipse上で、文字列の変数に対してtoString()を試してみたところ、格納されている文字列が出力されました。 ※自作したクラス、たとえばtest.MyClassだとすれば、toString()を用いれば「test.MyClass@01234」というような表記で出力されますが、このような情報を取得するにはどうすればよいでしょうか。 宜しくお願いします。

    • ベストアンサー
    • Java