split函数 订阅
split函数是编程语言中使用的一种函数名称,它是指返回一个下标从零开始的一维数组,split函数包含指定数目的子字符串。 展开全文
split函数是编程语言中使用的一种函数名称,它是指返回一个下标从零开始的一维数组,split函数包含指定数目的子字符串。
信息
描    述
返回一个下标从零开始的一维数组
语    法
expression, delimiter,等
中文名
split函数
compare值
-1,0,1,2
split函数语法
Split(expression[, delimiter[, count[, compare]]])Split函数语法有如下几部分:
收起全文
精华内容
下载资源
问答
  • split函数
    2020-11-19 22:27:33

    split函数的用法

    split():拆分字符串

    通过指定分隔符对字符串进行切片,并返回分割后的***字符串列表***。

    语法:

    str.split(str="",num = string.count(str))
    #str--分隔符,默认所有的空字符,包括空格、换行、制表符等
    #num--分割次数,默认为-1,即分割所有
    

    实例:

    a = '1+2+3+4'
    print(a.split('+'))
    
    更多相关内容
  • Oracle没有提供split函数,但可以自己建立一个函数实现此功能。比如“abc defg hijkl nmopqr stuvw xyz”,分隔符是空格,但空格个数不定。 源代码: CREATE OR REPLACE TYPE ty_str_split IS TABLE OF VARCHAR...
  • 下面小编就为大家带来一篇SQL中实现SPLIT函数几种方法总结(必看篇)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • 1:定义存储过程,用于分隔字符串 DELIMITER $$ USE `mess`$$ DROP PROCEDURE IF EXISTS `splitString`$$ CREATE DEFINER=`root`@`%` PROCEDURE `splitString`(IN f_string VARCHAR(1000),IN f_delimiter VARCHAR(5...
  •  我先介绍一下Split函数的用法: 返回值数组 = Split(“字符串”,”分割符”) 假设变量strURL保存着URL值,如strURL = “ftp://username:password@server”,这是我们在IE中登录到FTP上时的URL形式,如果...
  • 本文实例讲述了js使用split函数按照多个字符对字符串进行分割的方法。分享给大家供大家参考。具体分析如下: js中的split()函数可以对字符串按照指定的符号进行分割,但是如果字符串中存在多个分割符号,js的split()...
  • 在java.lang包中也有String.split()方法,与.net的类似,都是返回是一个字符型数组,但使用过程中还有一些小技巧。以下我就为大家介绍,需要的朋友可以参考下
  • 首先,我在知道Split这个函数的作用,是把一个字符串按指定的分割符分割成一个字符串数组。  ASP里有这个Split,是这样定义的dim Split(byval source as string ,byval str as string) as string() source是源字符...
  • The awk function split(s,a,sep) splits a string s into an awk array a using the delimiter sep
  • oracle split函数

    2012-08-02 23:25:26
    oracle split函数,内有两种实现方式,可直接返回多行记录如: 传入参数: SELECT * FROM TABLE(mm_split('中国,be,c,de',',')); 返回四条记录: 中国 be c de
  • c++split函数

    2013-02-08 07:00:43
    由于c++不含内置分割split,此文档包含c++spilt函数,和输出
  • Python内置Split函数的升级版
  • mysql split函数用法实例

    千次阅读 2021-01-19 00:22:16
    首先,大家要知道的是,在mysql中并没有split函数,需要自己写。比如下面几个mysql split函数的例子。例1,获得按指定字符分割的字符串的个数:复制代码 代码示例:DELIMITER $$DROP FUNCTION IF EXISTS `sims`.`func...

    首先,大家要知道的是,在mysql中并没有split函数,需要自己写。

    比如下面几个mysql split函数的例子。

    例1,获得按指定字符分割的字符串的个数:

    复制代码 代码示例:

    DELIMITER $$

    DROP FUNCTION IF EXISTS `sims`.`func_get_split_string_total`$$

    CREATE DEFINER=`root`@`localhost` FUNCTION `func_get_split_string_total`(

    f_string varchar(1000),f_delimiter varchar(5)

    ) RETURNS int(11)

    BEGIN

    declare returnInt int(11);

    if length(f_delimiter)=2  then

    return 1+(length(f_string) - length(replace(f_string,f_delimiter,'')))/2;

    else

    return 1+(length(f_string) - length(replace(f_string,f_delimiter,'')));

    end if;

    END$$

    DELIMITER ;

    调用:

    func_get_split_string_total('abc||def||gh','||')

    结果为3

    例2,得到第i个分割后的字符串。

    复制代码 代码示例:

    DELIMITER $$

    DROP FUNCTION IF EXISTS `sims`.`func_get_split_string`$$

    CREATE DEFINER=`root`@`localhost` FUNCTION `func_get_split_string`(

    f_string varchar(1000),f_delimiter varchar(5),f_order int) RETURNS varchar(255) CHARSET utf8

    BEGIN

    declare result varchar(255) default '';

    set result = reverse(substring_index(reverse(substring_index(f_string,f_delimiter,f_order)),f_delimiter,1));

    return result;

    END$$

    DELIMITER ;

    调用:func_get_split_string('abc||def||gh','||',2)

    结果为def

    例3,需求:A表中的一个字段值为1||2, 在select 时要通过和B字典表的关联得到a,b

    复制代码 代码示例:

    CREATE DEFINER=`root`@`localhost` FUNCTION `getDictName`(v_str varchar(100)) RETURNS varchar(100) CHARSET utf8

    BEGIN

    DECLARE i int(4);

    DECLARE dictCode varchar(100);

    DECLARE dictName varchar(100);

    DECLARE returnStr varchar(100);

    set i = 1;

    set returnStr = '';

    if(v_str is null or length(v_str)=0) then

    return returnStr;

    else

    while i<=func_get_split_string_total(v_str,'||')

    do

    set dictCode = func_get_split_string(v_str,'||',i);

    select names into dictName from sims_dd_dict where code = dictCode;

    set returnStr = concat(returnStr,',',dictName);  -- 这里要用中文的逗号,否则导出EXCEL的时候会串行,因为程序中是以逗号分隔的

    set i = i+1;  ---//(脚本学堂 www.jbxue.com 编辑整理)

    end while;

    set returnStr = subString(returnStr,2);

    return returnStr;

    end if;

    END$$

    在mysql数据库中使用split,有时要考虑接收返回值的问题,下面来看两个例子。

    例1,mysql使用split接收返回值。

    复制代码 代码示例:

    DELIMITER $$;

    DROP FUNCTION IF EXISTS `func_getSplitCount`$$

    CREATE FUNCTION `func_getSplitCount`(

    f_string varchar(1000),f_delimit varchar(5)

    ) RETURNS int(11)

    BEGIN

    return 1+(length(f_string) - length(replace(f_string,f_delimit,'')));

    END$$

    DELIMITER ;$$

    DELIMITER $$;    DROP FUNCTION IF EXISTS `func_getSplitCount`$$    CREATE FUNCTION `func_getSplitCount`(   f_string varchar(1000),f_delimit varchar(5)  ) RETURNS int(11)  BEGIN   return 1+(length(f_string) - length(replace(f_string,f_delimit,'')));  END$$    DELIMITER ;$$

    例2:

    复制代码 代码示例:

    DELIMITER $$;

    DROP FUNCTION IF EXISTS `func_getSplitString`$$

    CREATE FUNCTION `func_getSplitString`(

    f_string varchar(1000),f_delimit varchar(5),f_order int

    ) RETURNS varchar(255)

    BEGIN

    declare result varchar(255) default '';

    set result = reverse(substring_index(reverse(substring_index(f_string,f_delimit,f_order)),f_delimit,1));

    return result;

    END$$

    DELIMITER ;$$

    DELIMITER $$;    DROP FUNCTION IF EXISTS `func_getSplitString`$$    CREATE FUNCTION `func_getSplitString`(   f_string varchar(1000),f_delimit varchar(5),f_order int  ) RETURNS varchar(255)  BEGIN    declare result varchar(255) default '';    set result = reverse(substring_index(reverse(substring_index(f_string,f_delimit,f_order)),f_delimit,1));    return result;  END$$    DELIMITER ;$$

    参考文档:mysql实现字符串分割SPLIT函数的四种方法

    最后,通过几个例子,仔细体会下mysql中split函数的实现与用法。

    先设置:SET GLOBAL log_bin_trust_function_creators = 1;

    1,函数func_splitStringTotal:将字符串按指定方式分割,并计算单元总数

    代码:

    复制代码 代码示例:

    DELIMITER $$

    CREATE FUNCTION `func_get_splitStringTotal`(

    f_string varchar(10000),f_delimiter varchar(50)

    ) RETURNS int(11)

    BEGIN

    return 1+(length(f_string) - length(replace(f_string,f_delimiter,'')));

    END$$

    DELIMITER ;

    2,函数func_splitString:将字符串按指定方式分割,获取指定位置的数

    代码:

    复制代码 代码示例:

    DELIMITER $$

    DROP function IF EXISTS `func_splitString` $$

    CREATE FUNCTION `func_splitString`

    ( f_string varchar(1000),f_delimiter varchar(5),f_order int)

    RETURNS varchar(255) CHARSET utf8

    BEGIN

    declare result varchar(255) default '';

    set result = reverse(substring_index(reverse(substring_index(f_string,f_delimiter,f_order)),f_delimiter,1));

    return result;

    END$$

    SELECT func_splitString('1,2,3,4,5,6,7',',',1);

    3,过程splitString 将字符串分割,并放到临时表tmp_split中

    代码:

    复制代码 代码示例:

    DELIMITER $$

    DROP PROCEDURE IF EXISTS `splitString` $$

    CREATE PROCEDURE `splitString`

    (IN f_string varchar(1000),IN f_delimiter varchar(5))

    BEGIN

    declare cnt int default 0;

    declare i int default 0;

    set cnt = func_split_TotalLength(f_string,f_delimiter);

    DROP TABLE IF EXISTS `tmp_split`;

    create temporary table `tmp_split` (`val_` varchar(128) not null) DEFAULT CHARSET=utf8;

    while i < cnt

    do

    set i = i + 1;

    insert into tmp_split(`val_`) values (func_split(f_string,f_delimiter,i));

    end while;

    END$$

    call splitString('a,s,d,f,g,h,j',',');

    SELECT * from tmp_split;

    更多有关mysql split函数的用法,请参考:在mysql中实现split函数的几种方法 。

    就介绍这些吧,希望借助以上的例子,大家可以实现更好的mysql split函数,也欢迎分享更多的精彩实例。

    展开全文
  • mysql中split函数

    千次阅读 2021-02-05 14:26:51
    在mysql中并没有split函数,需要自己写:1)获得按指定字符分割的字符串的个数:DELIMITER $$DROP FUNCTION IF EXISTS `sims`.`func_get_split_string_total`$$CREATE DEFINER=`root`@`localhost` FUNCTION `func_get...

    在mysql中并没有split函数,需要自己写:

    1)获得按指定字符分割的字符串的个数:

    DELIMITER $$

    DROP FUNCTION IF EXISTS `sims`.`func_get_split_string_total`$$

    CREATE DEFINER=`root`@`localhost` FUNCTION `func_get_split_string_total`(

    f_string varchar(1000),f_delimiter varchar(5)

    ) RETURNS int(11)

    BEGIN

    declare returnInt int(11);

    if length(f_delimiter)=2 then

    return 1+(length(f_string) - length(replace(f_string,f_delimiter,'')))/2;

    else

    return 1+(length(f_string) - length(replace(f_string,f_delimiter,'')));

    end if;

    END$$

    DELIMITER ;

    例:func_get_split_string_total('abc||def||gh','||')  结果为3

    2)得到第i个分割后的字符串。

    DELIMITER $$

    DROP FUNCTION IF EXISTS `sims`.`func_get_split_string`$$

    CREATE DEFINER=`root`@`localhost` FUNCTION `func_get_split_string`(

    f_string varchar(1000),f_delimiter varchar(5),f_order int) RETURNS varchar(255) CHARSET utf8

    BEGIN

    declare result varchar(255) default '';

    set result = reverse(substring_index(reverse(substring_index(f_string,f_delimiter,f_order)),f_delimiter,1));

    return result;

    END$$

    DELIMITER ;

    例如:func_get_split_string('abc||def||gh','||',2) 为def

    3) 需求:A表中的一个字段值为1||2, 在select 时要通过和B字典表的关联得到a,b

    CREATE DEFINER=`root`@`localhost` FUNCTION `getDictName`(v_str varchar(100)) RETURNS varchar(100) CHARSET utf8

    BEGIN

    DECLARE i int(4);

    DECLARE dictCode varchar(100);

    DECLARE dictName varchar(100);

    DECLARE returnStr varchar(100);

    set i = 1;

    set returnStr = '';

    if(v_str is null or length(v_str)=0) then

    return returnStr;

    else

    while i<=func_get_split_string_total(v_str,'||')

    do

    set dictCode = func_get_split_string(v_str,'||',i);

    select names into dictName from sims_dd_dict where code = dictCode;

    set returnStr = concat(returnStr,',',dictName); -- 这里要用中文的逗号,否则导出EXCEL的时候会串行,因为程序中是以逗号分隔的

    set i = i+1;

    end while;

    set returnStr = subString(returnStr,2);

    return returnStr;

    end if;

    END$$

    1

    1

    分享到:

    18e900b8666ce6f233d25ec02f95ee59.png

    72dd548719f0ace4d5f9bca64e1d7715.png

    2011-08-24 14:44

    浏览 22905

    分类:数据库

    展开全文
  • mysql函数split功能实现

    2020-09-11 00:51:54
    mysql 5.* 的版本现在没有split 函数,但有些地方会用,在这里就简单记录一下
  • JAVA中split函数的用法

    千次阅读 2022-04-18 15:39:58
    JAVA中split函数的用法 只写经常使用的,并不完整。 1.基本用法,将字符串按照指定字符串进行分割,例如: public class Main { public static void main(String[] args) { String ss = "abcabcdefg"; String[] ...

    JAVA中split函数的用法

    只写经常使用的,并不完整。
    1.基本用法,将字符串按照指定字符串进行分割,例如:

    public class Main {
        public static void main(String[] args) {
            String ss = "abcabcdefg";
            String[] split = ss.split("bc");
            for(String st:split){
                System.out.println(st);
            }
            System.out.println("分隔后字符串数组长度为");
            System.out.println(split.length);
        }
    }
    

    输出:

    a
    a
    defg
    分隔后字符串数组长度为
    3
    

    2.需要使用多个字符进行分割:使用split("[]"),其中[]里面存放需要分割的字符,注意,现在是按照字符来分割,例如:

    public class Main {
        public static void main(String[] args) {
            String ss = "abcabcdefg";
            String[] split = ss.split("[bc]");
            for(String st:split){
                System.out.println(st);
            }
            System.out.println("分隔后字符串数组长度为");
            System.out.println(split.length);
        }
    }
    

    输出:

    a
    
    a
    
    defg
    分隔后字符串数组长度为
    5
    

    原因是将b和c都当作分割的字符。
    用法其实上面两条差不多就可以了,重要的是一些特殊情况:
    情况1:字符串中有连续的分割符,例如2中,b也是分割符c也是分隔符,那么在分割bc时会产生一个空字符(""),n个连续的分割符会产生n-1个空字符。下面是调试时的信息:
    在这里插入图片描述
    可以看到中间产生了空字符。
    情况2:分割符出现在首部,那么出现几个分割符,就有多少个空字符。例如

    public class Main {
        public static void main(String[] args) {
            String ss = "aaabcabcdefg";
            String[] split = ss.split("[a]");
            for(String st:split){
                System.out.println(st);
            }
            System.out.println("分隔后字符串数组长度为");
            System.out.println(split.length);
        }
    }
    

    输出:

    
    
    
    bc
    bcdefg
    分隔后字符串数组长度为
    5
    

    前面3个a都是空字符。
    情况3:有些正则表达式,这是一种特殊情况,如,*等符号需要添加转义字符\。

    解决方法:
    针对出现空字符,可以写一个遍历,长度为0的过滤掉。

    for(String st:split){
                if(st.length()>0){
                    list.add(st);
                }
            }
    

    针对转义字符,编译器会报错,就试试添加\。

    展开全文
  • Python中有split()和os.path.split()两个函数split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表。 os.path.split():将文件名和路径分割开。 1、split()函数 语法:str.split(str=...
  • Java split函数

    千次阅读 2020-11-22 20:01:39
    目录split函数的使用model split函数的使用 Java中的 split 函数是用于按指定字符(串)或正则去分割某个字符串,结果以字符串数组形式返回。 String str="1234@abc"; String[] a = str.split("@"); System.out....
  • 在mysql中实现split函数的几种方法关注:98答案:2mip版解决时间 2021-02-07 11:27提问者夜落花台2021-02-07 02:11在mysql中实现split函数的几种方法最佳答案二级知识专家蓝莓九栀2021-02-07 03:28mysql 5.* 的版本...
  • 本文实例讲述了php指定长度分割字符串str_split函数用法。分享给大家供大家参考,具体如下: 示例1: $str = 'abcdefgh'; $arr = str_split($str,2); 运行结果如下: array(4) { [0]=> string(2) "ab" [1]=> ...
  • 函数split() Python中有split()和os.path.split()两个函数,具体作用如下: split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list) os.path.split():按照路径将文件名和路径...
  • Lua实现split函数

    2020-09-22 04:43:26
    主要介绍了Lua实现split函数,lua中没有split分割字条串函数,本文使用自定义函数实现,需要的朋友可以参考下
  • mysql中的split函数

    2021-01-19 01:54:38
    mysql中没有字符串的分割函数,而最近在...原帖的地址:这里摘抄两个函数:DELIMITER $$CREATE DEFINER=`root`@`%` FUNCTION `func_get_split_string_total`(f_string varchar(1000),f_delimiter varchar(5)) RET...
  • splitsplit与join作用相反,用于把一个字符串分割成字符串数组.stringObject.split(a,b)这是它的语法. a是必须的 决定从a这分割.b不是必须的,可选。该参数可指定返回的数组的最大长度 。如果设置了该参数,返回的...
  • Mysql实现split函数

    千次阅读 2021-01-18 23:08:19
    就是一个典型的split应用,但是mysql却没有自带这个函数,在网上搜了一把。可以通过自建函数来解决,以下的函数来自互联网。DELIMITER $$CREATE FUNCTION `func_get_split_string_total`(f_string varchar(1000),f_...
  • Oracle实现split函数

    2021-03-01 15:25:51
    创建函数 CREATE OR REPLACE FUNCTION SPLIT(P_STRING VARCHAR2, P_SEP VARCHAR2 := ',') RETURN TYPE_SPLIT PIPELINED IS IDX PLS_INTEGER; V_STRING VARCHAR2(4000) := P_STRING; BEGIN .
  • oracle split 函数

    2012-05-05 14:53:34
    实现oracle中 分割字符串的功能,返回一个表。 比如:abc;cde;dfd;133 select * from table(split('abc;cde;dfd;133')) 可以返回 abc cde dfd 133

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 479,417
精华内容 191,766
关键字:

split函数