/******************************************************************************** * * Microsoft.VisualBasic.Strings をカバーした静的クラスです。 * ********************************************************************************/ class VBStrings { // Left メソッド /******************************************************************************** * 文字列の左端から指定された文字数分の文字列を返します。 * * @param stTarget 取り出す元になる文字列。 * @param iLength 取り出す文字数。 * @return 左端から指定された文字数分の文字列。 * 文字数を超えた場合は、文字列全体が返されます。 ********************************************************************************/ public static final String Left(final String stTarget, final int iLength) { if (iLength <= stTarget.length()) { return stTarget.substring(0, iLength); } return stTarget; } // Mid メソッド (+1) /******************************************************************************** * 文字列の指定された位置以降のすべての文字列を返します。 * * @param stTarget 取り出す元になる文字列。 * @param iStart 取り出しを開始する位置。 * @return 指定された位置以降のすべての文字列。 ********************************************************************************/ public static final String Mid(final String stTarget, final int iStart) { if (iStart <= stTarget.length()) { return stTarget.substring(iStart - 1); } return (""); } /********************************************************************************************* * 文字列の指定された位置から、指定された文字数分の文字列を返します。 * * @param stTarget 取り出す元になる文字列。 * @param iStart 取り出しを開始する位置。 * @param iLength 取り出す文字数。 * @return 指定された位置から指定された文字数分の文字列。 * 文字数を超えた場合は、指定された位置以降のすべての文字列が返されます。 *********************************************************************************************/ public static final String Mid(final String stTarget, final int iStart, final int iLength) { if (iStart <= stTarget.length()) { if (iStart + iLength - 1 <= stTarget.length()) { return stTarget.substring(iStart - 1, iStart + iLength - 1); } return stTarget.substring(iStart - 1); } return (""); } // Right メソッド /******************************************************************************** * 文字列の右端から指定された文字数分の文字列を返します。 * * @param stTarget 取り出す元になる文字列。 * @param iLength 取り出す文字数。 * @returns 右端から指定された文字数分の文字列。 * 文字数を超えた場合は、文字列全体が返されます。 ********************************************************************************/ public static final String Right(final String stTarget, final int iLength) { if (iLength <= stTarget.length()) { return stTarget.substring(stTarget.length() - iLength); } return stTarget; } } public class StringPikUp { public StringPikUp() { // 必要な変数を宣言する String stTarget = "ABCDEF"; // 左端から 4 文字の文字列を取得する System.out.println(VBStrings.Left(stTarget, 4)); //ABCD // 左端から 2 文字目以降のすべての文字列を取得する System.out.println(VBStrings.Mid(stTarget, 2)); //BCDEF // 左端から 2 文字目から 3 文字の文字列を取得する System.out.println(VBStrings.Mid(stTarget, 2, 3)); //BCD // 右端から 4 文字の文字列を取得する System.out.println(VBStrings.Right(stTarget, 4)); //CDEF } public static void main(String[] args) { StringPikUp stringPikUp = new StringPikUp(); } }