======================================================================
thymeleaf 공식 API 보기 https://www.thymeleaf.org
======================================================================
Thymeleaf의 String Api에 에 대하여
String 객체의 유틸리티 메서드는 #strings다.
ex) ${#strings.method(str)}
문자열 값들을 concatenation시키는 메서드
${#strings.concat(values...)}
${#strings.concatReplaceNulls(nullValue, values...)}
문자열 비교하는 메서드
${#strings.equals(first, second)}
${#strings.equalsIgnoreCase(first, second)}
Null-safe 스트링 변환 메서드
배열(array), 리스트(lists), 셋(sets)도 작동한다.
${#strings.toString(obj)}
값(value)이 존재하는지 검사하는 메서드
스트링이 값이 있는지(혹은 null값인지) 검사한다. 체크하기 전에 trim()메서드를 사용해 앞 뒤 공백을 없애주고 실행할 것.
배열(array), 리스트(lists), 셋(sets)도 작동한다.
true or false로 값을 반환한다.
${#strings.isEmpty(name)}
${#strings.arrayIsEmpty(nameArr)}
${#strings.listIsEmpty(nameList)}
${#strings.setIsEmpty(nameSet)}
디폴트 값 설정
먼저 isEmpty()메서드를 실행하여 문자열을 확인하여 false를 반환하는지 확인할 것.
false가 아닌 true라면 default값으로 지정된 문자열을 반환할 것이다. 배열(array), 리스트(lists), 셋(sets)도 작동한다.
${#strings.defaultString(text,default)}
${#strings.arrayDefaultString(textArr,default)}
${#strings.listDefaultString(textList,default)}
${#strings.setDefaultString(textSet,default)}
문자열 안에 지정된 철자가 있는지 확인하는 메서드
지정된 철자가 문자열에 포함되었는지 확인한다.
배열(array), 리스트(lists), 셋(sets)도 작동.
true or false로 값을 반환한다.
${#strings.contains(name,'cizz3007')}
${#strings.containsIgnoreCase(name,'cizz3007')}
값이 지정된 문자열로 시작(start)하거나 끝(end)나는지 확인하는 메서드
값이 지정된 문자열로 시작(start)하거나 끝(end)나는지 확인한다.
배열(array), 리스트(lists), 셋(sets)도 작동.
true or false로 값을 반환한다.
${#strings.startsWith(name,'chang')}
${#strings.endsWith(name, 'hyeon')}
Substring과 관련된 메서드.
배열(array), 리스트(lists), 셋(sets)도 작동.
${#strings.indexOf(name,frag)}
${#strings.substring(name,3,5)}
${#strings.substringAfter(name,prefix)}
${#strings.substringBefore(name,suffix)}
${#strings.replace(name,'las','ler')}
apeend, prepend 메서드
prepend는 문자열의 앞에 appends는 문자열의 뒤로 지정된 값을 추가한다.
배열(array), 리스트(lists), 셋(sets)도 작동.
${#strings.prepend(str,prefix)}
${#strings.append(str,suffix)}
대,소문자 변경 메서드
배열(array), 리스트(lists), 셋(sets)도 작동.
${#strings.toUpperCase(name)}
${#strings.toLowerCase(name)}
split, join 메서드
${#strings.arrayJoin(namesArray,',')}
${#strings.listJoin(namesList,',')}
${#strings.setJoin(namesSet,',')}
${#strings.arraySplit(namesStr,',')} // returns String[]
${#strings.listSplit(namesStr,',')} // returns List<String>
${#strings.setSplit(namesStr,',')} // returns Set<String>
trim 메서드
문자열의 공백을 제거합니다.
배열(array), 리스트(lists), 셋(sets)도 작동.
${#strings.trim(str)}
length 메서드
문자열의 길이값을 반환한다.
배열(array), 리스트(lists), 셋(sets)도 작동.
${#strings.length(str)}
abbreviate 메서드
문자열의 한계치를 설정하고, length가 한계치 이상이라면 잘라낸후 …으로 표시해준다.
ex) cizz3007@g…
배열(array), 리스트(lists), 셋(sets)도 작동.
${#strings.abbreviate(str,10)}
첫 글자를 대문자 혹은 소문자로 변경하는 메서드
배열(array), 리스트(lists), 셋(sets)도 작동.
${#strings.capitalize(str)}
${#strings.unCapitalize(str)}
문장에서 각 단어의 첫 글자를 대문자 혹은 소문자로 변경하는 메서드
배열(array), 리스트(lists), 셋(sets)도 작동.
${#strings.capitalizeWords(str)}
${#strings.capitalizeWords(str,delimiters)}
escape 메서드
문자열을 escape한다.
배열(array), 리스트(lists), 셋(sets)도 작동.
${#strings.escapeXml(str)}
${#strings.escapeJava(str)}
${#strings.escapeJavaScript(str)}
${#strings.unescapeJava(str)}
${#strings.unescapeJavaScript(str)}
랜덤 값을 리턴한다.
${#strings.randomAlphanumeric(count)}