Private Sub Command1_Click()
Dim myarray() '合成数组
Dim str1, str2, str3
str1 = "a,b,c#d,e,f#g,h,i#" '行分割#,列分割,有多少分割符就是多少数组
ReDim myarry(UBound(Split(str1, "#")) - 1, 0) '建立二维数组
For i = 0 To UBound(myarry, 1) '读取行数循环
str2 = Split(str1, "#") '分割行#
str3 = Split(str2(i), ",") '分割列,
ReDim Preserve myarry(UBound(myarry, 1), UBound(str3)) '改变数组二维长度 UBound(str3)
For X = 0 To UBound(myarry, 2) '读取列数循环
myarry(i, X) = str3(X)
Form1Print myarry(i, X)
Next
Form1Print
Next
End Sub
SQL Server Split函数
--Author:zc_0101
--说明:
--支持分割符多字节
--使用方法
--Select FROM DBOF_SQLSERVER_SPLIT('1203401230105045','0')
--select from DBOF_SQLSERVER_SPLIT('abc1234a12348991234','1234')
--Select from DBOF_SQLSERVER_SPLIT('ABC',',')
1 CREATE FUNCTION F_SQLSERVER_SPLIT(@Long_str NVARCHAR(MAX),@split_str NVARCHAR(100))
2 RETURNS @tmp TABLE(
3 ID inT IDENTITY PRIMARY KEY,
4 short_str NVARCHAR(MAX)
5 )
6 AS
7 BEGIN
8 DECLARE @short_str NVARCHAR(MAX),@split_str_length int,@split_str_Position_Begin int
9 SET @split_str_length = LEN(@split_str)
10 SET @Long_str=REPLACE(REPLACE(@Long_str,CHAR(10),''),CHAR(13),'')
11 IF CHARINDEX(@split_str,@Long_str)=1
12 SET @Long_str=STUFF(@Long_str,1,@split_str_length,'')
13 IF CHARINDEX(@split_str,@Long_str)=0
14 INSERT INTO @tmp SELECT @Long_str
15 ELSE
16 BEGIN
17 WHILE 1>0
18 BEGIN
19 SET @split_str_Position_Begin = CHARINDEX(@split_str,@Long_str)
20 SET @short_str=LEFT(@Long_str,@split_str_Position_Begin-1)
21 IF @short_str<>'' INSERT INTO @tmp SELECT @short_str
22 SET @Long_str=STUFF(@Long_str,1,@split_str_Position_Begin+@split_str_length-1,'')
23 SET @split_str_Position_Begin = CHARINDEX(@split_str,@Long_str)
24 IF @split_str_Position_Begin=0
25 BEGIN
26 IF LTRIM(@Long_str)<>''
27 INSERT INTO @tmp SELECT @Long_str
28 BREAK
29 END
30 END
31 END
32 RETURN
33 END
用于分割字符串。
相关函数如下:
本函数为 implode() 的反函数,使用一个字符串分割另一个字符串,返回一个数组。
语法:
array explode( string separator, string string [, int limit] )
例子:
输出结果如下:
str_split() 将字符串分割为一个数组,成功返回一个数组。
语法:
array str_split( string string [, int length] )
例子:
输出结果如下:
python split函数是什么?让我们一起来看下吧:
split是python中的一个内置函数,用来对字符串进行分割,分割后的字符串以列表形式返回,该函数的语法是“strsplit(str='''',
num=stringcount(str))”,参数:str--分隔符,默认为所有的空字符,包括空格、换行( )、制表符( )等;num--分割次数。默认为-1,即分割所有。换句话说,split()当不带参数时以空格进行分割,当带参数时,以该参数进行分割。
例如:
不带参数
In[1]:str_1='song huan gong' In[2]:print(str_1split()) ['song','huan','gong'] In[3]:
结论:当不带参数时,不管空格在哪,或者有几个,默认是以空格作为参数。
带参数
In[3]:str_2='iisongiiihuaniiiigongi' In[4]:print(str_2split('i')) ['','','song','','','huan','','','','gong',''] In[5]:
输出结果为:['','','song','','','huan','','','','gong','']
oracle的split函数截取如何返回成一行数据
CREATE OR REPLACE TYPE ty_str_split IS TABLE OF VARCHAR2 (4000);
CREATE OR REPLACE FUNCTION split (p_str IN VARCHAR2, p_delimiter IN VARCHAR2)
RETURN ty_str_split
IS
j INT := 0;
i INT := 1;
len INT := 0;
len1 INT := 0;
str VARCHAR2 (4000);
str_split ty_str_split := ty_str_split ();
BEGIN
len := LENGTH (p_str);
len1 := LENGTH (p_delimiter);
WHILE j < len
LOOP
j := INSTR (p_str, p_delimiter, i);
IF j = 0
THEN
j := len;
str := SUBSTR (p_str, i);
str_splitEXTEND;
str_split (str_splitCOUNT) := str;
IF i >= len
THEN
EXIT;
END IF;
ELSE
str := SUBSTR (p_str, i, j - i);
i := j + len1;
str_splitEXTEND;
str_split (str_splitCOUNT) := str;
END IF;
END LOOP;
RETURN str_split;
END split;
/
1测试例子:
select from table (split('a,b,c,sdf',','));
1 a
2 b
3 c
4 sdf
用这个函数进行截取的时候 返回的是多条 如何才能让他返回成一行呢
a b c sdf
很简单的程序,输入一个字符串,字符串的格式为9,3,2,1这样的字符串,通过程序将其排序
处理过程:
1、输入字符串
2、分割字符串,生成一个字符串数组像上面类似为 String input[4] = {"9","3","2","1"};
3、调用排序方法,将上面的字符串数组进行排序
splite的主要作用就是分割字符串(父类是String类)
传入参数为:1、分割标志符,2、分割规则,上面的程序规定是去除空值。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)