Class TextSplitter

java.lang.Object
org.aoju.bus.core.text.TextSplitter

public class TextSplitter extends Object
字符串切分器,封装统一的字符串分割静态方法
Since:
Java 17+
Author:
Kimi Liu
  • Constructor Details

    • TextSplitter

      public TextSplitter()
  • Method Details

    • split

      public static List<String> split(CharSequence text, int limit)
      使用空白符切分字符串 切分后的字符串两边不包含空白符,空串或空白符串并不做为元素之一 如果为空字符串或者null 则返回空集合
      Parameters:
      text - 被切分的字符串
      limit - 限制分片数
      Returns:
      切分后的集合
    • split

      public static List<String> split(CharSequence text, char separator, boolean isTrim, boolean ignoreEmpty)
      切分字符串
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符
      isTrim - 是否去除切分字符串后每个元素两边的空格
      ignoreEmpty - 是否忽略空串
      Returns:
      切分后的集合
    • split

      public static List<String> split(CharSequence text, String separator, boolean isTrim, boolean ignoreEmpty)
      切分字符串,不忽略大小写
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符串
      isTrim - 是否去除切分字符串后每个元素两边的空格
      ignoreEmpty - 是否忽略空串
      Returns:
      切分后的集合
    • split

      public static List<String> split(CharSequence text, char separator, int limit, boolean isTrim, boolean ignoreEmpty)
      切分字符串,大小写敏感
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符
      limit - 限制分片数,-1不限制
      isTrim - 是否去除切分字符串后每个元素两边的空格
      ignoreEmpty - 是否忽略空串
      Returns:
      切分后的集合
    • split

      public static List<String> split(String text, Pattern separator, int limit, boolean isTrim, boolean ignoreEmpty)
      通过正则切分字符串 如果为空字符串或者null 则返回空集合
      Parameters:
      text - 字符串
      separator - 分隔符正则Pattern
      limit - 限制分片数
      isTrim - 是否去除切分字符串后每个元素两边的空格
      ignoreEmpty - 是否忽略空串
      Returns:
      切分后的集合
    • split

      public static List<String> split(CharSequence text, String separator, int limit, boolean isTrim, boolean ignoreEmpty)
      切分字符串,不忽略大小写
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符串
      limit - 限制分片数
      isTrim - 是否去除切分字符串后每个元素两边的空格
      ignoreEmpty - 是否忽略空串
      Returns:
      切分后的集合
    • split

      public static <R> List<R> split(CharSequence text, char separator, int limit, boolean ignoreEmpty, Function<String,R> mapping)
      切分字符串,大小写敏感
      Type Parameters:
      R - 切分后的元素类型
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符
      limit - 限制分片数,-1不限制
      ignoreEmpty - 是否忽略空串
      mapping - 切分后的字符串元素的转换方法
      Returns:
      切分后的集合,元素类型是经过 mapping 转换后的
    • split

      public static List<String> split(CharSequence text, char separator, int limit, boolean isTrim, boolean ignoreEmpty, boolean ignoreCase)
      切分字符串
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符
      limit - 限制分片数,-1不限制
      isTrim - 是否去除切分字符串后每个元素两边的空格
      ignoreEmpty - 是否忽略空串
      ignoreCase - 是否忽略大小写
      Returns:
      切分后的集合
    • split

      public static <R> List<R> split(CharSequence text, char separator, int limit, boolean ignoreEmpty, boolean ignoreCase, Function<String,R> mapping)
      切分字符串 如果为空字符串或者null 则返回空集合
      Type Parameters:
      R - 切分后的元素类型
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符
      limit - 限制分片数,-1不限制
      ignoreEmpty - 是否忽略空串
      ignoreCase - 是否忽略大小写
      mapping - 切分后的字符串元素的转换方法
      Returns:
      切分后的集合,元素类型是经过 mapping 转换后的
    • split

      public static List<String> split(CharSequence text, String separator, int limit, boolean isTrim, boolean ignoreEmpty, boolean ignoreCase)
      切分字符串 如果为空字符串或者null 则返回空集合
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符串
      limit - 限制分片数,小于等于0表示无限制
      isTrim - 是否去除切分字符串后每个元素两边的空格
      ignoreEmpty - 是否忽略空串
      ignoreCase - 是否忽略大小写
      Returns:
      切分后的集合
    • splitTrim

      public static List<String> splitTrim(CharSequence text, String separator, boolean ignoreEmpty)
      切分字符串,去除每个元素两边空格,忽略大小写
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符串
      ignoreEmpty - 是否忽略空串
      Returns:
      切分后的集合
    • splitTrim

      public static List<String> splitTrim(CharSequence text, char separator, boolean ignoreEmpty)
      切分字符串
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符
      ignoreEmpty - 是否忽略空串
      Returns:
      切分后的集合
    • splitTrim

      public static List<String> splitTrim(CharSequence text, String separator, int limit, boolean ignoreEmpty)
      切分字符串,去除每个元素两边空格,忽略大小写
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符串
      limit - 限制分片数
      ignoreEmpty - 是否忽略空串
      Returns:
      切分后的集合
    • splitTrim

      public static List<String> splitTrim(CharSequence text, char separator, int limit, boolean ignoreEmpty)
      切分字符串,大小写敏感,去除每个元素两边空白符
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符
      limit - 限制分片数,-1不限制
      ignoreEmpty - 是否忽略空串
      Returns:
      切分后的集合
    • splitToArray

      public static String[] splitToArray(String text, String separator)
      切分字符串为字符串数组
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符
      Returns:
      切分后的集合
    • splitToArray

      public static String[] splitToArray(String text, String separator, boolean isTrim, boolean ignoreEmpty)
      切分字符串为字符串数组
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符, 每个字符都被单独视为分隔符
      isTrim - 是否去除切分字符串后每个元素两边的空格
      ignoreEmpty - 是否忽略空串
      Returns:
      切分后的集合
    • splitToArray

      public static String[] splitToArray(CharSequence text, String separator, int limit, boolean isTrim, boolean ignoreEmpty)
      切分字符串为字符串数组
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符
      limit - 限制分片数,小于等于0表示无限制
      isTrim - 是否去除切分字符串后每个元素两边的空格
      ignoreEmpty - 是否忽略空串
      Returns:
      切分后的集合
    • splitToArray

      public static String[] splitToArray(CharSequence text, char separator, int limit, boolean isTrim, boolean ignoreEmpty)
      切分字符串为字符串数组
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符
      limit - 限制分片数
      isTrim - 是否去除切分字符串后每个元素两边的空格
      ignoreEmpty - 是否忽略空串
      Returns:
      切分后的集合
    • splitToArray

      public static String[] splitToArray(String text, int limit)
      切分字符串为字符串数组
      Parameters:
      text - 被切分的字符串
      limit - 限制分片数
      Returns:
      切分后的集合
    • splitToArray

      public static String[] splitToArray(String text, Pattern separatorPattern, int limit, boolean isTrim, boolean ignoreEmpty)
      通过正则切分字符串为字符串数组
      Parameters:
      text - 被切分的字符串
      separatorPattern - 分隔符正则Pattern
      limit - 限制分片数
      isTrim - 是否去除切分字符串后每个元素两边的空格
      ignoreEmpty - 是否忽略空串
      Returns:
      切分后的集合
    • splitIgnoreCase

      public static List<String> splitIgnoreCase(CharSequence text, char separator, int limit, boolean isTrim, boolean ignoreEmpty)
      切分字符串,忽略大小写
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符
      limit - 限制分片数,-1不限制
      isTrim - 是否去除切分字符串后每个元素两边的空格
      ignoreEmpty - 是否忽略空串
      Returns:
      切分后的集合
    • splitIgnoreCase

      public static List<String> splitIgnoreCase(CharSequence text, String separator, int limit, boolean isTrim, boolean ignoreEmpty)
      切分字符串,忽略大小写
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符串
      limit - 限制分片数
      isTrim - 是否去除切分字符串后每个元素两边的空格
      ignoreEmpty - 是否忽略空串
      Returns:
      切分后的集合
    • splitTrimIgnoreCase

      public static List<String> splitTrimIgnoreCase(CharSequence text, String separator, int limit, boolean ignoreEmpty)
      切分字符串,去除每个元素两边空格,忽略大小写
      Parameters:
      text - 被切分的字符串
      separator - 分隔符字符串
      limit - 限制分片数
      ignoreEmpty - 是否忽略空串
      Returns:
      切分后的集合
    • splitPath

      public static List<String> splitPath(CharSequence text)
      切分字符串路径,仅支持Unix分界符:/
      Parameters:
      text - 被切分的字符串
      Returns:
      切分后的集合
    • splitPath

      public static List<String> splitPath(CharSequence text, int limit)
      切分字符串路径,仅支持Unix分界符:/
      Parameters:
      text - 被切分的字符串
      limit - 限制分片数
      Returns:
      切分后的集合
    • splitPathToArray

      public static String[] splitPathToArray(CharSequence text)
      切分字符串路径,仅支持Unix分界符:/
      Parameters:
      text - 被切分的字符串
      Returns:
      切分后的集合
    • splitPathToArray

      public static String[] splitPathToArray(CharSequence text, int limit)
      切分字符串路径,仅支持Unix分界符:/
      Parameters:
      text - 被切分的字符串
      limit - 限制分片数
      Returns:
      切分后的集合
    • splitByLength

      public static String[] splitByLength(String text, int len)
      根据给定长度,将给定字符串截取为多个部分
      Parameters:
      text - 字符串
      len - 每一个小节的长度
      Returns:
      截取后的字符串数组
    • splitByRegex

      public static List<String> splitByRegex(String text, String separatorRegex, int limit, boolean isTrim, boolean ignoreEmpty)
      通过正则切分字符串
      Parameters:
      text - 字符串
      separatorRegex - 分隔符正则
      limit - 限制分片数
      isTrim - 是否去除切分字符串后每个元素两边的空格
      ignoreEmpty - 是否忽略空串
      Returns:
      切分后的集合
    • trimFunc

      public static Function<String,String> trimFunc(boolean isTrim)
      Trim函数
      Parameters:
      isTrim - 是否trim
      Returns:
      Function