- org.apache.commons.lang3.StringUtils







==================== Substring



* StringUtils.substring(String str, int start)

- str의 문자열을 start 위치부터 출력한다.

- 음수는 뒤에서부터 출력한다.

- str이 null이면 return값은 null이다.


StringUtils.substring(null, *) = null

StringUtils.substring("", *) = ""

StringUtils.substring("abc", 0) = "abc"

StringUtils.substring("abc", 2) = "c"

StringUtils.substring("abc", 4) = ""

StringUtils.substring("abc", -2) = "bc"

StringUtils.substring("abc", -4) = "abc"




* StringUtils.substring(String str, int start, int end)

str의 문자열을 start 위치부터 end 위치까지 출력한다.

- 음수는 뒤에서부터 출력한다.

- str이 null이면 return 값은 null이다.


StringUtils.substring(null, *, *) = null

StringUtils.substring("", *, *) = ""

StringUtils.substring("abc", 0, 2) = "ab"

StringUtils.substring("abc", 2, 0) = ""

StringUtils.substring("abc", 2, 4) = "c"

StringUtils.substring("abc", 4, 6) = ""

StringUtils.substring("abc", -2, -1) = "b"

StringUtils.substring("abc", -4, 2) = "ab"








==================== SubstringAfter / SubstringBefore



* StringUtils.substringBefore(String str, String separator)

- str문자를 separator문자 이전문자를 출력한다.


StringUtils.substringBefore(null, *) = null

StringUtils.substringBefore("", *) = ""

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"




* StringUtils.substringAfter(String str, String separator)

str문자를 separator문자 이전문자를 출력한다.


StringUtils.substringAfter(null, *) = null

StringUtils.substringAfter("", *) = ""

StringUtils.substringAfter(*, null) = ""

StringUtils.substringAfter("abc", "a") = "bc"

StringUtils.substringAfter("abcba", "b") = "cba"

StringUtils.substringAfter("abc", "c") = ""

StringUtils.substringAfter("abc", "d") = ""

StringUtils.substringAfter("abc", "") = "abc"



* StringUtils.substringBeforeAfter(String str, String separator)

str문자에서 separator문자의 젤 마지막 위치 이전의 값을 출력한다.


StringUtils.substringBeforeLast(null, *) = null

StringUtils.substringBeforeLast("", *) = ""

StringUtils.substringBeforeLast("abcba", "b") = "abc"

StringUtils.substringBeforeLast("abc", "c") = "ab"

StringUtils.substringBeforeLast("a", "a") = ""

StringUtils.substringBeforeLast("a", "z") = "a"

StringUtils.substringBeforeLast("a", null) = "a"

StringUtils.substringBeforeLast("a", "") = "a"




* StringUtils.substringAfterLast(String str, String separator)

str문자에서 separator문자의 젤 마지막 위치 이후의 값을 출력한다.


StringUtils.substringAfterLast(null, *) = null

StringUtils.substringAfterLast("", *) = ""

StringUtils.substringAfterLast(*, "") = ""

StringUtils.substringAfterLast(*, null) = ""

StringUtils.substringAfterLast("abc", "a") = "bc"

StringUtils.substringAfterLast("abcba", "b") = "a"

StringUtils.substringAfterLast("abc", "c") = ""

StringUtils.substringAfterLast("a", "a") = ""

StringUtils.substringAfterLast("a", "z") = ""







==================== SubstringBetween



* StringUtils.substringBetween(String str, String tag)

str에서 tag와 tag 사이의 문자를 출력한다.

- str or tag가 null이면 null값을 리턴한다.


StringUtils.substringBetween(null, *) = null

StringUtils.substringBetween("", "") = ""

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

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

StringUtils.substringBetween("tagabctag", "") = ""

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




* StringUtils.substringBetween(String str, String open, String close)

str에서 open과 close 사이의 문자를 출력한다.

- str 또는 open 또는 close가 null이면 null값을 리턴한다.


StringUtils.substringBetween("wx[b]yz", "[", "]") = "b"

StringUtils.substringBetween(null, *, *) = null StringUtils.substringBetween(*, null, *) = null StringUtils.substringBetween(*, *, 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"







==================== Left/Right/Mid




* StringUtils.left(String str, int len)

str문자열을 len의 길이만큼 왼쪽부터 출력한다.

- str이 null이면 return값은 null이다.


StringUtils.left(null, *) = null StringUtils.left(*, -ve) = "" StringUtils.left("", *) = "" StringUtils.left("abc", 0) = "" StringUtils.left("abc", 2) = "ab" StringUtils.left("abc", 4) = "abc"




* StringUtils.right(String str, int len)

str문자열을 len의 길이만큼 오른쪽부터 출력한다.

- str이 null이면 return값은 null이다.


StringUtils.right(null, *) = null

StringUtils.right(*, -ve) = "" StringUtils.right("", *) = "" StringUtils.right("abc", 0) = "" StringUtils.right("abc", 2) = "bc" StringUtils.right("abc", 4) = "abc"




* StringUtils.mid(String str, int pos, int len)

str문자열을 pos의 위치부터 len길이만큼 출력한다.

- pos가 음수이면 처음부터시작한다.

- str이 null이면 return값은 null이다.


StringUtils.mid(null, *, *) = null StringUtils.mid(*, *, -ve) = "" StringUtils.mid("", 0, *) = "" StringUtils.mid("abc", 0, 2) = "ab" StringUtils.mid("abc", 0, 4) = "abc" StringUtils.mid("abc", 2, 4) = "c" StringUtils.mid("abc", 4, 2) = "" StringUtils.mid("abc", -2, 2) = "ab"


블로그 이미지

얼라리

IT정보

,




- org.apache.commons.lang3.StringUtils







==================== Contains



* StringUtils.contains(CharSequence seq, int searchChar)

- seq 문자열 중 searchChar의 문자가 포함되어 있으면 true를 리턴한다.


StringUtils.contains(null, *) = false

StringUtils.contains(*, null) = false

StringUtils.contains("abc", 'a') = true

StringUtils.contains("abc", 'z') = false




* StringUtils.contains(CharSequence seq, CharSequence searchSeq)

- seq 문자열 중 searchChar의 문자열이 포함되어 있으면 true를 리턴한다.


StringUtils.contains(null, *) = false

StringUtils.contains(*, null) = false


StringUtils.contains("", "") = true


StringUtils.contains("abc", "") = true

StringUtils.contains("abc", "a") = true

StringUtils.contains("abc", "z") = false





* StringUtils.containsIgnoreCase(CharSequence str, CharSequence searchStr)

- seq 문자열 중 searchChar의 문자열이 포함되어 있으면 true를 리턴한다.


StringUtils.containsIgnoreCase(null, *) = false

StringUtils.containsIgnoreCase(*, null) = false


StringUtils.containsIgnoreCase("", "") = true


StringUtils.containsIgnoreCase("abc", "") = true

StringUtils.containsIgnoreCase("abc", "a") = true

StringUtils.containsIgnoreCase("abc", "z") = false


StringUtils.containsIgnoreCase("abc", "A") = true


StringUtils.containsIgnoreCase("abc", "Z") = false




* StringUtils.containsAny(CharSequence cs, char... searchChars)

- searchChars로 cs내에 찾아서 있으면 true값을 리턴한다.


StringUtils.containsAny(null, *) = false

StringUtils.containsAny("", *) = false


StringUtils.containsAny(*, null) = false


StringUtils.containsAny(*, []) = false

StringUtils.containsAny("zzabyycdxx", ['z', 'a']) = true

StringUtils.containsAny("zzabyycdxx", ['b', 'y']) = true


StringUtils.containsAny("zzabyycdxx", ['z', 'y']) = true


StringUtils.containsAny("aba", ['z']) = false



* StringUtils.containsAny(CharSequence cs, CharSequence searchChars)

- searchChars로 cs내에 찾아서 있으면 true값을 리턴한다.


StringUtils.containsAny(null, *) = false

StringUtils.containsAny("", *) = false


StringUtils.containsAny(*, null) = false


StringUtils.containsAny(*, "") = false

StringUtils.containsAny("zzabyycdxx", "za") = true

StringUtils.containsAny("zzabyycdxx", "by") = true


StringUtils.containsAny("zzabyycdxx", "zy") = true


StringUtils.containsAny("zzabyycdxx", "\tx") = true


StringUtils.containsAny("zzabyycdxx", "&.#yF") = true


StringUtils.containsAny("aba", "z") = false




* StringUtils.containsAny(CharSequence cs, CharSequence... searchCharSequences)

- searchCharSequences문자들로 cs내에 찾아서 있으면 true값을 리턴한다.


StringUtils.containsAny(null, *) = false

StringUtils.containsAny("", *) = false


StringUtils.containsAny(*, null) = false


StringUtils.containsAny(*, []) = false

StringUtils.containsAny("abcd", "ab", null) = true

StringUtils.containsAny("abcd", "ab", "cd") = true


StringUtils.containsAny("abc", "d", "abc") = true




* StringUtils.containsOnly(CharSequence cs, char... valid)

- cs가 오직 valid 문자들 내에 문자만 포함하고 있어야한다.

- cs or valid가 null이거나 vaild의 길이가 0이면 false를 리턴

- cs의 길이가 0이면 true를 리턴


StringUtils.containsOnly(null, *) = false

StringUtils.containsOnly(*, null) = false


StringUtils.containsOnly("", *) = true


StringUtils.containsOnly("ab", '') = false

StringUtils.containsOnly("abab", 'abc') = true

StringUtils.containsOnly("ab1", 'abc') = false


StringUtils.containsOnly("abz", 'abc') = false




* StringUtils.containsNone(CharSequence cs, char... searchChars)

- cs의 문자와 searchChars의 문자와 같은 문자가 없어야한다.

- cs or validChars가 null이면 false를 리턴


StringUtils.containsNone(null, *) = true

StringUtils.containsNone(*, null) = true


StringUtils.containsNone("", *) = true


StringUtils.containsNone("ab", '') = true

StringUtils.containsNone("abab", 'xyz') = true

StringUtils.containsNone("ab1", 'xyz') = true


StringUtils.containsNone("abz", 'xyz') = false




* StringUtils.containsNone(CharSequence cs, String invalidChars)

- cs의 문자와 searchChars의 문자와 같은 문자가 없어야한다.

- cs or validChars가 null이면 false를 리턴


StringUtils.containsNone(null, *) = true

StringUtils.containsNone(*, null) = true


StringUtils.containsNone("", *) = true


StringUtils.containsNone("ab", "") = true

StringUtils.containsNone("abab", "xyz") = true

StringUtils.containsNone("ab1", "xyz") = true


StringUtils.containsNone("abz", "xyz") = false


블로그 이미지

얼라리

IT정보

,




String 문자열에 대해 Apache에서 제공하는 라이브러리를 사용하면 

null exception을 방지하여 사용할 수 있습니다.






- org.apache.commons.lang3.StringUtils






==================== Empty




* StringUtils.isEmpty(CharSequence cs)

- 값이 null인지 공백문자("")이면 true 값을 반환한다.


StringUtils.isEmpty(null) : true

StringUtils.isEmpty("") : true

StringUtils.isEmpty(" ") : false

StringUtils.isEmpty("str") : false

StringUtils.isEmpty("  str  ") : false



* StringUtils.isNotEmpty(CharSequence cs)

- StringUtils.isEmpty의 반대결과를 반환한다.


StringUtils.isNotEmpty(null) : false

StringUtils.isNotEmpty("") : false

StringUtils.isNotEmpty(" ") : true

StringUtils.isNotEmpty("str") : true

StringUtils.isNotEmpty("  str  ") : true



* StringUtils.isAnyEmpty(CharSequence... css)

- 문자들중 null이나 공백문자("")가 있을 시 true 값을 반환한다.


StringUtils.isAnyEmpty(null) : true

StringUtils.isAnyEmpty(null, "str") : true

StringUtils.isAnyEmpty("", "str") : true

StringUtils.isAnyEmpty("str", "") : true

StringUtils.isAnyEmpty("  str  ", null) : ture

StringUtils.isAnyEmpty(" ", "str") : false

StringUtils.isAnyEmpty("str", "str_2") : false

StringUtils.isAnyEmpty(new String[]{}) : false 

StringUtils.isAnyEmpty(new String[]{""}) : true



* StringUtils.isNoneEmpty(CharSequence... css)

- StringUtils.isAnyEmpty의 반대 결과를 반환한다.


StringUtils.isNoneEmpty(null) : false

StringUtils.isAnyEmpty(null, "str") : false

StringUtils.isAnyEmpty("", "str") : false

StringUtils.isAnyEmpty("str", "") : false

StringUtils.isAnyEmpty("  str  ", null) : false

StringUtils.isAnyEmpty(new String[]{}) : ture

StringUtils.isAnyEmpty(new String[]{""}) : false

StringUtils.isAnyEmpty(" ", "str") : true

StringUtils.isAnyEmpty("str", "str_2") : true



* StringUtils.isAllEmpty(CharSequence... css)

-모든 문자열들은 null이거나 공백문자("")이면 true를 반환한다.


StringUtils.isAllEmpty(null) : true

StringUtlis.isAllEmpty(null, "") : true

StringUtlis.isAllEmpty(new String[] {}) : true

StringUtils.isAllEmpty(null, "str") : false

StringUtils.isAllEmpty("", "str") : false

StringUtils.isAllEmpty("str", "") : false

StringUtils.isAllEmpty("  str  ", null) : false

StringUtils.isAllEmpty(" ", "str") : false

StringUtils.isAllEmpty("str", str_2) : false





==================== Blank




* StringUtils. isBlank(CharSequence cs)

- whitespace(" "), 공백문자(""), null이면 true를 반환한다.


StringUtils.isBlank(null) : true

StringUtils.isBlank("") : true

StringUtils.isBlank(" ") : true

StringUtils.isBlank("str") : false

StringUtils.isBlank("  str  ") : false



* StringUtils.isNotBlank(final CharSequence cs)

- StringUtils.isBlank의 반대결과를 반환한다.


StringUtils.isNotBlank(null)      = false

StringUtils.isNotBlank("")        = false

StringUtils.isNotBlank(" ")       = false

StringUtils.isNotBlank("str")     = true

StringUtils.isNotBlank("  str  ") = true



* StringUtils.isAnyBlank(CharSequence... css)

- 문자들중 하나면 StringUtils.isBlank가 true여도 true를 반환한다.


StringUtils.isAnyBlank(null, "str")      = true

StringUtils.isAnyBlank(null, null)       = true

StringUtils.isAnyBlank("", "str")        = true

StringUtils.isAnyBlank("str", "")        = true

StringUtils.isAnyBlank("  str  ", null)  = true

StringUtils.isAnyBlank(" ", "str")       = true

StringUtils.isAnyBlank(new String[] {})  = false

StringUtils.isAnyBlank(new String[]{""}) = true

StringUtils.isAnyBlank("str", "str_2")     = false



* StringUtils.isNoneBlank(CharSequence... css)

- StringUtils.isAnyBlank의 반대결과를 반환한다.


StringUtils.isNoneBlank(null)             = false

StringUtils.isNoneBlank(null, "str")      = false

StringUtils.isNoneBlank(null, null)       = false

StringUtils.isNoneBlank("", "str")        = false

StringUtils.isNoneBlank("str", "")        = false

StringUtils.isNoneBlank("  str   ", null)  = false

StringUtils.isNoneBlank(" ", "str")       = false

StringUtils.isNoneBlank(new String[] {})  = true

StringUtils.isNoneBlank(new String[]{""}) = false

StringUtils.isNoneBlank("str", "str_2")     = true




블로그 이미지

얼라리

IT정보

,