字符串分割(split),将字符串按照指定字符进行分割。split(String regex)和split(String regex, int limit)

这篇具有很好参考价值的文章主要介绍了字符串分割(split),将字符串按照指定字符进行分割。split(String regex)和split(String regex, int limit)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、split(String regex)字符串分割,将字符串按照指定字符进行分割,返回的是一个字符串数组。

  public String[] split(String regex) {
        return split(regex, 0);
    }
原理:参数名称是regex表示的是以某个字符串进行字符分割。

值得注意的是Java中使用String.split对有些特殊字符进行分割时需要进行转义才能进行分割。

例如:“| " ,”*", ". "等,否则无法分割会报错。

实例1:根据空格切割
    public static void main(String[] args) {
        String k1 = "招标人 投标人 设计单位 施工单位";
        String[] k = k1.split(" ");
        System.out.println(k[0]);
        System.out.println(k[1]);
        System.out.println(k[2]);
        System.out.println(k[3]);
    }
输出结果:

字符串分割(split),将字符串按照指定字符进行分割。split(String regex)和split(String regex, int limit)

实例2:根据特殊字符进行“.”分割
    public static void main(String[] args) {
        String k1 = "招标人.投标人.设计单位.施工单位";
        String[] k = k1.split("\\.");//需要转义
        System.out.println(k[0]);
        System.out.println(k[1]);
        System.out.println(k[2]);
        System.out.println(k[3]);
    }
输出结果:

字符串分割(split),将字符串按照指定字符进行分割。split(String regex)和split(String regex, int limit)

二、split(String regex, int limit)字符串分割,返回的是字符串数组。

 public String[] split(String regex, int limit) {
        /* fastpath if the regex is a
         (1)one-char String and this character is not one of the
            RegEx's meta characters ".$|()[{^?*+\\", or
         (2)two-char String and the first char is the backslash and
            the second is not the ascii digit or ascii letter.
         */
        char ch = 0;
        if (((regex.value.length == 1 &&
             ".$|()[{^?*+\\".indexOf(ch = regex.charAt(0)) == -1) ||
             (regex.length() == 2 &&
              regex.charAt(0) == '\\' &&
              (((ch = regex.charAt(1))-'0')|('9'-ch)) < 0 &&
              ((ch-'a')|('z'-ch)) < 0 &&
              ((ch-'A')|('Z'-ch)) < 0)) &&
            (ch < Character.MIN_HIGH_SURROGATE ||
             ch > Character.MAX_LOW_SURROGATE))
        {
            int off = 0;
            int next = 0;
            boolean limited = limit > 0;
            ArrayList<String> list = new ArrayList<>();
            while ((next = indexOf(ch, off)) != -1) {
                if (!limited || list.size() < limit - 1) {
                    list.add(substring(off, next));
                    off = next + 1;
                } else {    // last one
                    //assert (list.size() == limit - 1);
                    list.add(substring(off, value.length));
                    off = value.length;
                    break;
                }
            }
            // If no match was found, return this
            if (off == 0)
                return new String[]{this};

            // Add remaining segment
            if (!limited || list.size() < limit)
                list.add(substring(off, value.length));

            // Construct result
            int resultSize = list.size();
            if (limit == 0) {
                while (resultSize > 0 && list.get(resultSize - 1).length() == 0) {
                    resultSize--;
                }
            }
            String[] result = new String[resultSize];
            return list.subList(0, resultSize).toArray(result);
        }
        return Pattern.compile(regex).split(this, limit);
    }
原理:split(String regex, int limit)字符串中的regex为非必填项,用来表示用于分割的是一个字符还是多个字符,如果忽略该选项,返回包含整个字符串的单一元素数组。Limit可选项,该值用来限制返回中的元素个数。

注意:特殊字符需要进行转义。

例如:“| " ,”*", ". "等,否则无法分割会报错。

实例1:当regex为空字符情况。
    public static void main(String[] args) {
        String k1 = "招标人#投标人#设计单位#施工单位";
        String[] k = k1.split("",4);//需要转义
        System.out.println(k[0]);
        System.out.println(k[1]);
        System.out.println(k[2]);
        System.out.println(k[3]);
    }
运行结果:

字符串分割(split),将字符串按照指定字符进行分割。split(String regex)和split(String regex, int limit)

实例2:当regex为“#”号字符情况。
    public static void main(String[] args) {
        String k1 = "招标人#投标人#设计单位#施工单位";
        String[] k = k1.split("#",4);//需要转义
        System.out.println(k[0]);
        System.out.println(k[1]);
        System.out.println(k[2]);
        System.out.println(k[3]);
    }
运行结果:

字符串分割(split),将字符串按照指定字符进行分割。split(String regex)和split(String regex, int limit)

实例3:当regex为多字符的情况
    public static void main(String[] args) {
        String k1 = "招标人#投标人#设计单位#施工单位";
        String[] k = k1.split("#投标人",4);//需要转义
        System.out.println(k[0]);
        System.out.println(k[1]);
    }
运行结果:

字符串分割(split),将字符串按照指定字符进行分割。split(String regex)和split(String regex, int limit)

实例4:当regex为“#”字符且limit限制返回2个的情况
   public static void main(String[] args) {
        String k1 = "招标人#投标人#设计单位#施工单位";
        String[] k = k1.split("#",2);//需要转义
        System.out.println(k[0]);
        System.out.println(k[1]);
    }
运行结果:

字符串分割(split),将字符串按照指定字符进行分割。split(String regex)和split(String regex, int limit)文章来源地址https://www.toymoban.com/news/detail-502695.html

到了这里,关于字符串分割(split),将字符串按照指定字符进行分割。split(String regex)和split(String regex, int limit)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python用split多字符分割字符串的方法

    1.python 有内置函数split()分隔字符串,但这个内置函数只能识别单个分隔符。 调用方法如下:  其中:  str -- 分隔符,默认为所有的空字符,包括空格、换行(n)、制表符(t)等。 num -- 分割次数。默认为 -1, 即分隔所有。 示例如下: 2. 用正则表达式re模块的split()函数可以使用

    2024年02月07日
    浏览(46)
  • vue使用split()将字符串分割数组join()将数组转字符串reverse()将数组反转

    1.split() 将字符串切割成数组 输出如下 1.split()不传参数默认整个字符串作为数组的一个元素,返回包含原始字符串的数组 2.split(‘’)单引号不传参数默认将字符串拆分成一个个字符数组 如输入参数: const str = 123456789’ 拆分后:[‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ‘6’, ‘7’

    2023年04月08日
    浏览(42)
  • Java中String字符串截取几种方法(substring,split)

    这是一个Java中的String的基础用法的演示。 下面通过代码对大家进行讲解 substring 这里用来ndexOf,lastIndexOf这两个函数进行字符定位,一个是从前往后寻找第一个,一个是从后往前寻找第一个。 split split本身就是分割的意思,里面传入一个字符串,通过这个字符串进行分割,也是

    2024年02月05日
    浏览(56)
  • String字符串分割的3种方法 Java

    使用了 split(string) 方法通过指定分隔符将字符串分割为数组 在java.lang包中有String.split()方法,返回是一个数组。“.”和“|”都是转义字符,必须得加\\\"“; 如果用“.”作为分隔的话,必须是如下写法:String.split(”.“),这样才能正确的分隔开,不能用String.split(”.“); 如果用“

    2024年01月24日
    浏览(42)
  • 使用v-html进行渲染如何使标签按照字符串显示,特殊样式标签(自己添加的部分)按照标签解析

    使用v-html进行渲染如何使标签按照字符串显示,特殊样式标签(自己添加的部分)按照标签解析 需求:是内容里如果含有含有www.baidu.com这种链接高亮显示 解决办法: 首先拿到需要回显的内容content对内容进行转义escapeHTML,之后再去判断是否是链接进行高亮添加 代码如下

    2024年02月16日
    浏览(41)
  • C# 将字符串进行分割

    将字符串str1 = \\\"select * from table \\\"; 进行分割,有两种方法: 用字符分割字符串: 字符串.split(); 用字符串分割字符串: Regex.Split(); 两者适用情况不同,详细解释如下: 1.1 单个字符 作为分割,使用.split(\\\'\\\') 1.2 多个字符 作为分割 ,使用.split(new char[]{\\\'\\\'}) 注: string[] arr = str.Spli

    2023年04月11日
    浏览(37)
  • Java中split分割带空格的字符串 \t \n \r \f 及 \s 的区别

    t:制表符,相当于tab n:换行 r:回车 f:换页 s:在java正则表达式常见,例如java的匹配、替换、分割字符串(matches,split) 例: \\\"Java is fun\\\".matches(\\\"Java.*\\\") //返回true 二、正确使用split来分割空白字符 输入:hello my  lovely    world!       (分别为一个空格、两个空格 和 一个制

    2024年02月15日
    浏览(40)
  • 如何进行字符串的分割和拼接?

    字符串的分割和拼接是在C语言编程中常见的操作,尤其在处理文本数据时非常重要。在本文中,我将详细解释如何在C语言中进行字符串的分割和拼接,包括使用标准库函数和手动操作字符串数组的方法,以及一些实际应用示例。 字符串分割是将一个字符串拆分成多个子字符

    2024年02月09日
    浏览(33)
  • C语言中的strtok()函数进行字符串分割

    引言         在处理文本或字符串数据时,我们常常需要将一长串连续的字符按照特定的分隔符分解成一个个独立的子串。C语言中提供了一个非常实用的库函数—— strtok() ,用于实现这一功能。本文将通过一段示例代码详细解析并演示如何使用 strtok() 函数进行字符串分

    2024年01月23日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包