ts.util.text
クラス StringOperation

java.lang.Object
  上位を拡張 ts.util.text.StringOperation

public final class StringOperation
extends java.lang.Object

基本的な文字列操作を実行するためのクラス。
Unicodeの補助文字の対応(JSR-204)により、文字とchar変数が必ず しも対応しなくなり、文字列操作において文字に関する考慮が複雑になった。 このクラスでは、その文字に関する考慮を簡単にするため、以下の方針で文字及び 文字列を扱うことができるように、メソッドを用意している:

バージョン:
$Revision: 1.2 $, $Date: 2007/05/27 16:13:19 $
作成者:
佐藤隆之.

コンストラクタの概要
protected StringOperation()
          デフォルトコンストラクタ。
 
メソッドの概要
static java.lang.String characterAt(java.lang.String str, int codePointIndex)
          指定されたインデックスの文字を取得する。
static boolean contains(java.lang.String str, java.lang.String searched)
          指定された文字列に、指定された探索文字列が含まれているかどうかを判定する。
static boolean endsWith(java.lang.String str, java.lang.String suffix)
          指定された文字列の末尾が、指定されたサフィックスと一致しているかどうかを 判定する。
static int indexOf(java.lang.String str, java.lang.String searched)
          指定された文字列において、探索文字列が最初に現れるインデックスを取得する。
static int indexOf(java.lang.String str, java.lang.String searched, int fromCodePointIndex)
          指定された文字列において、探索文字列が開始インデックス以降で最初に現れる インデックスを取得する。
static boolean isDigits(java.lang.String str)
          指定された文字列が数字だけで構成されているかどうかを判定する。
static boolean isEmpty(java.lang.String str)
          指定された文字列が空文字列かどうかを判定する。
static boolean isUnicodeBlock(java.lang.String str, java.lang.Character.UnicodeBlock unicodeBlock)
          指定された文字列内の文字が全て指定されたUnicode文字ブロックに含まれている かどうかを判定する。
static boolean isWhitespaces(java.lang.String str)
          指定された文字列が空白文字だけで構成されているかどうかを判定する。
static int lastIndexOf(java.lang.String str, java.lang.String searched)
          指定された文字列において、探索文字列が最後に現れるインデックスを取得する。
static int lastIndexOf(java.lang.String str, java.lang.String searched, int fromCodePointIndex)
          指定された文字列において、探索文字列が指定されたインデックス以前で最後に 現れるインデックスを取得する。
static int length(java.lang.String str)
          指定された文字列の長さを取得する。
protected static int offsetByCodePoints(java.lang.String str, int index, int codePointOffset)
          指定されたインデックスからコード・ポイント・オブセット分だけ移動した インデックスを返す。
static boolean startsWith(java.lang.String str, java.lang.String prefix)
          指定された文字列の開始が、指定されたプリフィックスと一致しているかどうか を判定する。
static java.lang.String substring(java.lang.String str, int beginCodePointIndex)
          指定されたインデックスを先頭とする部分文字列を取得する。
static java.lang.String substring(java.lang.String str, int beginCodePointIndex, int endCodePointIndex)
          指定されたインデックスを先頭及び末尾とする部分文字列を取得する。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

StringOperation

protected StringOperation()
デフォルトコンストラクタ。

メソッドの詳細

length

public static int length(java.lang.String str)
指定された文字列の長さを取得する。
なお、ここでいう長さとは、コード・ポイント単位の値をいう。

パラメータ:
str - 文字列。
戻り値:
文字列長。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグ・モードのみ)。

isEmpty

public static boolean isEmpty(java.lang.String str)
指定された文字列が空文字列かどうかを判定する。

パラメータ:
str - 文字列。
戻り値:
空文字列の場合はtrueを返す。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグ・モードのみ)。

isWhitespaces

public static boolean isWhitespaces(java.lang.String str)
指定された文字列が空白文字だけで構成されているかどうかを判定する。
引数が空文字列の場合はfalseを返す。

パラメータ:
str - 文字列。
戻り値:
空白文字だけで構成されている場合はtrueを返す。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグ・モードのみ)。

isUnicodeBlock

public static boolean isUnicodeBlock(java.lang.String str,
                                     java.lang.Character.UnicodeBlock unicodeBlock)
指定された文字列内の文字が全て指定されたUnicode文字ブロックに含まれている かどうかを判定する。
引数が空文字列の場合はfalseを返す。

パラメータ:
str - 文字列。
unicodeBlock - Unicode文字ブロック。
戻り値:
全ての文字が指定されたUnicode文字ブロックの場合はtrueを 返す。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグ・モードのみ)。

isDigits

public static boolean isDigits(java.lang.String str)
指定された文字列が数字だけで構成されているかどうかを判定する。
引数が空文字列の場合はfalseを返す。

パラメータ:
str - 文字列。
戻り値:
数字だけで構成されている場合はtrueを返す。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグ・モードのみ)。

characterAt

public static java.lang.String characterAt(java.lang.String str,
                                           int codePointIndex)
                                    throws java.lang.IndexOutOfBoundsException
指定されたインデックスの文字を取得する。
なお、ここでいうインデックスとは、コード・ポイントの先頭からの順番(0から 開始)である。

パラメータ:
str - 文字列。
codePointIndex - コード・ポイント・インデックス。
戻り値:
指定されたインデックスの文字。
例外:
java.lang.IndexOutOfBoundsException - 指定されたインデックスが範囲外の場合。
java.lang.AssertionError - 引数がヌルの場合(デバッグ・モードのみ)。

substring

public static java.lang.String substring(java.lang.String str,
                                         int beginCodePointIndex)
                                  throws java.lang.IndexOutOfBoundsException
指定されたインデックスを先頭とする部分文字列を取得する。
なお、ここでいうインデックスとは、コード・ポイントの先頭からの順番(0から 開始)である。

パラメータ:
str - 文字列。
beginCodePointIndex - 開始インデックス。
戻り値:
指定されたインデックスから開始する部分文字列。
例外:
java.lang.IndexOutOfBoundsException - 指定されたインデックスが範囲外の場合。
java.lang.AssertionError - 引数がヌルの場合(デバッグ・モードのみ)。

substring

public static java.lang.String substring(java.lang.String str,
                                         int beginCodePointIndex,
                                         int endCodePointIndex)
                                  throws java.lang.IndexOutOfBoundsException
指定されたインデックスを先頭及び末尾とする部分文字列を取得する。
なお、ここでいうインデックスとは、コード・ポイントの先頭からの順番(0から 開始)である。

パラメータ:
str - 文字列。
beginCodePointIndex - 開始インデックス。
endCodePointIndex - 終了インデックス。
戻り値:
部分文字列。
例外:
java.lang.IndexOutOfBoundsException - 指定されたインデックスが範囲外の場合。
java.lang.AssertionError - 引数がヌルの場合(デバッグ・モードのみ)。

indexOf

public static int indexOf(java.lang.String str,
                          java.lang.String searched)
指定された文字列において、探索文字列が最初に現れるインデックスを取得する。
探索文字列が見つからなかった場合は、負の値を返す。
なお、ここでいうインデックスとは、コード・ポイントの先頭からの順番(0から 開始)である。

パラメータ:
str - 文字列。
searched - 探索文字列。
戻り値:
探索される文字列が最初に現れたインデックス。見つからなかった場合は 負の値を返す。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグ・モードのみ)。

indexOf

public static int indexOf(java.lang.String str,
                          java.lang.String searched,
                          int fromCodePointIndex)
指定された文字列において、探索文字列が開始インデックス以降で最初に現れる インデックスを取得する。
開始インデックスの範囲については制約はなく、負の値や文字列の長さを超える インデックスが指定された場合でも判定が行われる。負の値が指定された場合は、 ゼロを指定された時と同じ結果を返す。
探索文字列が開始インデックス以降で見つからなかった場合は、負の値を返す。
なお、ここでいうインデックスとは、コード・ポイントの先頭からの順番(0から 開始)である。

パラメータ:
str - 文字列。
searched - 探索文字列。
fromCodePointIndex - 探索を開始するインデックス。
戻り値:
探索される文字列が最初に現れたインデックス。見つからなかった場合は 負の値を返す。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグ・モードのみ)。

lastIndexOf

public static int lastIndexOf(java.lang.String str,
                              java.lang.String searched)
指定された文字列において、探索文字列が最後に現れるインデックスを取得する。
なお、ここでいうインデックスとは、コード・ポイントの先頭からの順番(0から 開始)である。

パラメータ:
str - 文字列。
searched - 探索文字列。
戻り値:
探索される文字列が最後に現れたインデックス。見つからなかった場合は 負の値を返す。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグ・モードのみ)。

lastIndexOf

public static int lastIndexOf(java.lang.String str,
                              java.lang.String searched,
                              int fromCodePointIndex)
指定された文字列において、探索文字列が指定されたインデックス以前で最後に 現れるインデックスを取得する。
開始インデックスの範囲については制約はなく、負の値や文字列の長さを超える インデックスが指定された場合でも判定が行われる。文字列の長さを超える値が 指定された場合は、最終インデックスを指定された時と同じ結果を返す。
なお、ここでいうインデックスとは、コード・ポイントの先頭からの順番(0から 開始)である。

パラメータ:
str - 文字列。
searched - 探索文字列。
fromCodePointIndex - 探索を行う最終インデックス。
戻り値:
探索される文字列が最後に現れたインデックス。見つからなかった場合は 負の値を返す。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグ・モードのみ)。

startsWith

public static boolean startsWith(java.lang.String str,
                                 java.lang.String prefix)
指定された文字列の開始が、指定されたプリフィックスと一致しているかどうか を判定する。

パラメータ:
str - 文字列。
prefix - プリフィックス。
戻り値:
文字列の開始がプリフィックスと一致する場合はtrueを返す。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグ・モードのみ)。

endsWith

public static boolean endsWith(java.lang.String str,
                               java.lang.String suffix)
指定された文字列の末尾が、指定されたサフィックスと一致しているかどうかを 判定する。

パラメータ:
str - 文字列。
suffix - サフィックス。
戻り値:
文字列の開始がサフィックスと一致する場合はtrueを返す。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグ・モードのみ)。

contains

public static boolean contains(java.lang.String str,
                               java.lang.String searched)
指定された文字列に、指定された探索文字列が含まれているかどうかを判定する。

パラメータ:
str - 文字列。
searched - 探索文字列。
戻り値:
探索文字列が含まれている場合はtrueを返す。
例外:
java.lang.AssertionError - 引数がヌルの場合(デバッグ・モードのみ)。

offsetByCodePoints

protected static int offsetByCodePoints(java.lang.String str,
                                        int index,
                                        int codePointOffset)
                                 throws java.lang.IndexOutOfBoundsException
指定されたインデックスからコード・ポイント・オブセット分だけ移動した インデックスを返す。
ここでいうインデックスは、文字列内のchar配列のインデックス である。
このメソッドは、JDK1.5の不具合(Bug ID:6242664)への対策のために作成 された。

パラメータ:
index - インデックス。
codePointOffset - コード・ポイント・オフセット。
戻り値:
文字列内のインデックス。
例外:
java.lang.IndexOutOfBoundsException - 引数のインデックスが負の値か文字列長を 超える場合、又はコード・ポイント・インデックスが負の値の場合、 移動した後のインデックスが文字列長を超える場合。


Copyright (C) SATOH Takayuki All Rights Reserved.