字符串

  • #strings: 用于String对象的实用方法。
  1. /*
  2. * ======================================================================
  3. * See javadoc API for class org.thymeleaf.expression.Strings
  4. * ======================================================================
  5. */
  6. /*
  7. * Null-safe toString()
  8. */
  9. ${#strings.toString(obj)} // also array*, list* and set*
  10. /*
  11. * Check whether a String is empty (or null). Performs a trim() operation before check
  12. * Also works with arrays, lists or sets
  13. */
  14. ${#strings.isEmpty(name)}
  15. ${#strings.arrayIsEmpty(nameArr)}
  16. ${#strings.listIsEmpty(nameList)}
  17. ${#strings.setIsEmpty(nameSet)}
  18. /*
  19. * Perform an 'isEmpty()' check on a string and return it if false, defaulting to
  20. * another specified string if true.
  21. * Also works with arrays, lists or sets
  22. */
  23. ${#strings.defaultString(text,default)}
  24. ${#strings.arrayDefaultString(textArr,default)}
  25. ${#strings.listDefaultString(textList,default)}
  26. ${#strings.setDefaultString(textSet,default)}
  27. /*
  28. * Check whether a fragment is contained in a String
  29. * Also works with arrays, lists or sets
  30. */
  31. ${#strings.contains(name,'ez')} // also array*, list* and set*
  32. ${#strings.containsIgnoreCase(name,'ez')} // also array*, list* and set*
  33. /*
  34. * Check whether a String starts or ends with a fragment
  35. * Also works with arrays, lists or sets
  36. */
  37. ${#strings.startsWith(name,'Don')} // also array*, list* and set*
  38. ${#strings.endsWith(name,endingFragment)} // also array*, list* and set*
  39. /*
  40. * Substring-related operations
  41. * Also works with arrays, lists or sets
  42. */
  43. ${#strings.indexOf(name,frag)} // also array*, list* and set*
  44. ${#strings.substring(name,3,5)} // also array*, list* and set*
  45. ${#strings.substringAfter(name,prefix)} // also array*, list* and set*
  46. ${#strings.substringBefore(name,suffix)} // also array*, list* and set*
  47. ${#strings.replace(name,'las','ler')} // also array*, list* and set*
  48. /*
  49. * Append and prepend
  50. * Also works with arrays, lists or sets
  51. */
  52. ${#strings.prepend(str,prefix)} // also array*, list* and set*
  53. ${#strings.append(str,suffix)} // also array*, list* and set*
  54. /*
  55. * Change case
  56. * Also works with arrays, lists or sets
  57. */
  58. ${#strings.toUpperCase(name)} // also array*, list* and set*
  59. ${#strings.toLowerCase(name)} // also array*, list* and set*
  60. /*
  61. * Split and join
  62. */
  63. ${#strings.arrayJoin(namesArray,',')}
  64. ${#strings.listJoin(namesList,',')}
  65. ${#strings.setJoin(namesSet,',')}
  66. ${#strings.arraySplit(namesStr,',')} // returns String[]
  67. ${#strings.listSplit(namesStr,',')} // returns List<String>
  68. ${#strings.setSplit(namesStr,',')} // returns Set<String>
  69. /*
  70. * Trim
  71. * Also works with arrays, lists or sets
  72. */
  73. ${#strings.trim(str)} // also array*, list* and set*
  74. /*
  75. * Compute length
  76. * Also works with arrays, lists or sets
  77. */
  78. ${#strings.length(str)} // also array*, list* and set*
  79. /*
  80. * Abbreviate text making it have a maximum size of n. If text is bigger, it
  81. * will be clipped and finished in "..."
  82. * Also works with arrays, lists or sets
  83. */
  84. ${#strings.abbreviate(str,10)} // also array*, list* and set*
  85. /*
  86. * Convert the first character to upper-case (and vice-versa)
  87. */
  88. ${#strings.capitalize(str)} // also array*, list* and set*
  89. ${#strings.unCapitalize(str)} // also array*, list* and set*
  90. /*
  91. * Convert the first character of every word to upper-case
  92. */
  93. ${#strings.capitalizeWords(str)} // also array*, list* and set*
  94. ${#strings.capitalizeWords(str,delimiters)} // also array*, list* and set*
  95. /*
  96. * Escape the string
  97. */
  98. ${#strings.escapeXml(str)} // also array*, list* and set*
  99. ${#strings.escapeJava(str)} // also array*, list* and set*
  100. ${#strings.escapeJavaScript(str)} // also array*, list* and set*
  101. ${#strings.unescapeJava(str)} // also array*, list* and set*
  102. ${#strings.unescapeJavaScript(str)} // also array*, list* and set*
  103. /*
  104. * Null-safe comparison and concatenation
  105. */
  106. ${#strings.equals(first, second)}
  107. ${#strings.equalsIgnoreCase(first, second)}
  108. ${#strings.concat(values...)}
  109. ${#strings.concatReplaceNulls(nullValue, values...)}
  110. /*
  111. * Random
  112. */
  113. ${#strings.randomAlphanumeric(count)}