Python字符串split及rsplit方法原理详解

Python021

Python字符串split及rsplit方法原理详解,第1张

1.描述

split()方法通过指定分隔符对字符串进行切片,如果参数num有指定值,则分隔num+1个子字符串,默认分隔符为所有空字符,包括空格、换行(\n)、制表符(\t)等

rstrip()方法通过

2.语法

str.split([sep=None][,count=S.count(sep)])

str.rsplit([sep=None][,count=S.count(sep)])

3.参数

sep -- 可选参数,指定的分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等

count -- 可选参数,分割次数,默认为分隔符在字符串中出现的总次数

4.返回值

返回分割后的字符串列表,可以用新字符串来接收

5.实例

str1 = "Hao123 hao456 hAo789"

new_str = str1.split()

new_str2 = str1.split(' ', 1)

new_str3 = str1.rsplit(' ', 1)

print(new_str)

print(new_str2)

print(new_str3)

#输出结果如下:

['Hao123', 'hao456', 'hAo789']

['Hao123', 'hao456 hAo789']

['Hao123 hao456', 'hAo789']

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

方法:

先拆分,然后把拆分的字符串存到数据组中即可,代码参考

public class STest

{

public static void main(String[] args)

{

String t="abc,edf,xyz"

String[] chrstr=t.split(",")

for(int i=0i<chrstr.lengthi++)

{

System.out.println(chrstr[i])

}

}

}

你的o时分隔符,第一个o和第二个o中间为空,所以结果会出现第一个空"b",[""]就这个,这个空表示也就是前两个o中间时个空

这样想:"a,b,,,,,,,c,d",这个中间这么多逗号,如果以逗号分割,中间就会出先多个空

后面的也是一样的。 结果中倒数第二个空时后面两个o中间的空,

最后第一个空,时最后一个o后面的空

你可以试试在最后一个o后面加一个字符,这样结果中的最后一个空就变成了这个字符 。

另外如果你限制数组长度为4,String[] d=tes.split("o",4),

输出的结果就会是这样:'b','',':and:f','o',最后一个o就不会被认为是分隔符了。