Apache Commons Lang – StringUtils(SubstringBefore / SubstringAfter / SubstringBetween)


引き続き、StringUtilsクラスの説明です。

今回は、前回の部分文字列の拡張についてです。


substringBefore

public static java.lang.String substringBefore(java.lang.String str, java.lang.String separator)

変換対象の文字列内で、最初に出現した指定された区切り文字列より前の部分文字列を取得します。

戻り値に区切り文字列は含みません。
変換対象の文字列にNULLを指定した場合は、NULLが返却されます。
変換対象の文字列に空文字を指定した場合は、空文字が返却されます。
区切り文字列にNULLを指定した場合は、変換対象の文字列がそのまま返却されます。


パラメータ:
str – 変換対象の文字列
separator – 区切り文字列
戻り値:
指定された区切り文字列より前の部分文字列

StringUtils.substringBefore(null, "a")    = null
StringUtils.substringBefore("", "a")      = ""
StringUtils.substringBefore("abc", "a")   = ""
StringUtils.substringBefore("abcba", "b") = "a"
StringUtils.substringBefore("abc", "c")   = "ab"
StringUtils.substringBefore("abc", "d")   = "abc"
StringUtils.substringBefore("abc", "")    = ""
StringUtils.substringBefore("abc", null)  = "abc"

substringAfter

public static java.lang.String substringAfter(java.lang.String str, java.lang.String separator)

変換対象の文字列内で、最初に出現した指定された区切り文字列より後の部分文字列を取得します。

戻り値に区切り文字列は含みません。
変換対象の文字列にNULLを指定した場合は、NULLが返却されます。
変換対象の文字列に空文字を指定した場合は、空文字が返却されます。
区切り文字列にNULLを指定した場合は、変換対象の文字列がそのまま返却されます。


パラメータ:
str – 変換対象の文字列
separator – 区切り文字列
戻り値:
指定された区切り文字列より後の部分文字列

StringUtils.substringAfter(null, "a")    = null
StringUtils.substringAfter("", "a")      = ""
StringUtils.substringAfter("abc", "a")   = "bc"
StringUtils.substringAfter("abcba", "b") = "cba"
StringUtils.substringAfter("abc", "c")   = ""
StringUtils.substringAfter("abc", "d")   = ""
StringUtils.substringAfter("abc", "")    = "abc"
StringUtils.substringAfter("abc", null)  = ""

substringBeforeLast

public static java.lang.String substringBeforeLast(java.lang.String str, java.lang.String separator)

変換対象の文字列内で、最後に出現した指定された区切り文字列より前の部分文字列を取得します。

戻り値に区切り文字列は含みません。
変換対象の文字列にNULLを指定した場合は、NULLが返却されます。
変換対象の文字列に空文字を指定した場合は、空文字が返却されます。
区切り文字列にNULLや空文字を指定した場合は、変換対象の文字列がそのまま返却されます。


パラメータ:
str – 変換対象の文字列
separator – 区切り文字列
戻り値:
指定された区切り文字列より前の部分文字列

StringUtils.substringBeforeLast(null, "a")    = null
StringUtils.substringBeforeLast("", "a")      = ""
StringUtils.substringBeforeLast("abcba", "b") = "abc"
StringUtils.substringBeforeLast("abc", "c")   = "ab"
StringUtils.substringBeforeLast("a", "a")     = ""
StringUtils.substringBeforeLast("a", "z")     = "a"
StringUtils.substringBeforeLast("a", "")      = "a"
StringUtils.substringBeforeLast("a", null)    = "a"

substringAfterLast

public static java.lang.String substringAfterLast(java.lang.String str, java.lang.String separator)

変換対象の文字列内で、最後に出現した指定された区切り文字列より後の部分文字列を取得します。

戻り値に区切り文字列は含みません。
変換対象の文字列にNULLを指定した場合は、NULLが返却されます。
変換対象の文字列に空文字を指定した場合は、空文字が返却されます。
区切り文字列にNULLや空文字を指定した場合は、変換対象の文字列がそのまま返却されます。


パラメータ:
str – 変換対象の文字列
separator – 区切り文字列
戻り値:
指定された区切り文字列より後の部分文字列

StringUtils.substringAfterLast(null, "a")    = null
StringUtils.substringAfterLast("", "a")      = ""
StringUtils.substringAfterLast("abc", "a")   = "bc"
StringUtils.substringAfterLast("abcba", "b") = "a"
StringUtils.substringAfterLast("abc", "c")   = ""
StringUtils.substringAfterLast("a", "a")     = ""
StringUtils.substringAfterLast("a", "z")     = ""
StringUtils.substringAfterLast("a", "")      = ""
StringUtils.substringAfterLast("a", null)    = ""

substringBetween

public static java.lang.String substringBetween(java.lang.String str, java.lang.String tag)

変換対象の文字列から指定されたタグに挟まれた部分文字列を取得します。

変換対象の文字列にNULLを指定した場合は、NULLが返却されます。
タグにNULLを指定した場合は、NULLが返却されます。
タグに空文字を指定した場合は、空文字が返却されます。


パラメータ:
str – 変換対象の文字列
tag – タグ
戻り値:
タグに挟まれた部分文字列

StringUtils.substringBetween(null, "tag")        = null
StringUtils.substringBetween("", "")             = ""
StringUtils.substringBetween("", "tag")          = null
StringUtils.substringBetween("tagabctag", null)  = null
StringUtils.substringBetween("tagabctag", "")    = ""
StringUtils.substringBetween("tagabctag", "tag") = "abc"

substringBetween

public static java.lang.String substringBetween(java.lang.String str, java.lang.String open, java.lang.String close)

変換対象の文字列から開始文字列と終了文字列に挟まれた部分文字列を取得します。

最初に一致した部分文字列のみが返却されます。
変換対象の文字列にNULLを指定した場合は、NULLが返却されます。
開始文字列、終了文字列にNULLを指定した場合は、NULLが返却されます。
開始文字列と終了文字列の両方に空文字を指定した場合は、空文字が返却されます。


パラメータ:
str – 変換対象の文字列
open – 開始文字列
close – 終了文字列
戻り値:
開始文字列と終了文字列に挟まれた部分文字列

StringUtils.substringBetween("wx[b]yz", "[", "]")    = "b"
StringUtils.substringBetween(null, "y", "z")         = null
StringUtils.substringBetween("wx[b]yz", null, "]")   = null
StringUtils.substringBetween("wx[b]yz", "[", null)   = null
StringUtils.substringBetween("", "", "")             = ""
StringUtils.substringBetween("", "", "]")            = null
StringUtils.substringBetween("", "[", "]")           = null
StringUtils.substringBetween("yabcz", "", "")        = ""
StringUtils.substringBetween("yabcz", "y", "z")      = "abc"
StringUtils.substringBetween("yabczyabcz", "y", "z") = "abc"

substringsBetween

public static java.lang.String[] substringsBetween(java.lang.String str, java.lang.String open, java.lang.String close)

変換対象の文字列から開始文字列と終了文字列に挟まれた部分文字列を配列として取得します。

変換対象の文字列にNULLを指定した場合は、NULLが返却されます。
開始文字列、終了文字列にNULL、または空文字を指定した場合は、NULLが返却されます。


パラメータ:
str – 変換対象の文字列
open – 開始文字列
close – 終了文字列
戻り値:
開始文字列と終了文字列に挟まれた部分文字列の配列

StringUtils.substringsBetween("[a][b][c]", "[", "]")  = ["a","b","c"]
StringUtils.substringsBetween(null, "[", "]")         = null
StringUtils.substringsBetween("[a][b][c]", null, "]") = null
StringUtils.substringsBetween("[a][b][c]", "[", null) = null
StringUtils.substringsBetween("", "[", "]")           = []
StringUtils.substringsBetween("[a][b][c]", "", "]")   = null
StringUtils.substringsBetween("[a][b][c]", "[", "")   = null

関連記事

  1. コメント 0

  1. トラックバック 0

return top