python正则表达式split()方法详解

原创 2016年05月30日 12:03:09

python的正则表达式为Re模块。其中split()方法是用于进行字符串分割。

先上语法规范:

str.split(str="", num=string.count(str))

然后来个例子示例一下:

import re
mystr='www.csdn.com'
print mystr
print re.split('.',mystr)

看看结果

www.csdn.com
['', '', '', '', '', '', '', '', '', '', '', '', '']


why?因为点.是匹配除了换行符以外的任意字符。所以加个斜杠转义一下就可以了

import re
mystr='www.csdn.com'
print mystr
print re.split('\.',mystr)
再看看结果:

www.csdn.com
['www', 'csdn', 'com']
嗯。正常了。

然后可以从结果看出来,split()函数分割出来的结果其实是一个列表。那么要获取结果,就可以通过对列表的操作即可

比如我要获取“csdn”这个字符串,我其他都不要

那就这样写:

import re
mystr='www.csdn.com'
print mystr
my=re.split('\.',mystr)
print my[1]
看看结果:

www.csdn.com
csdn
嗯。那就对了。

如果字符串中找不到分割的字符,那么输出的结果就是完整的字符串

我们可以把上例中的点改为其他试试看

import re
mystr='www.csdn.com'
print re.split('\,',mystr)
现在我们再看看结果

['www.csdn.com']
所以从这个示例中,可以知道找不到分割点,输出的将是整个字符串


然后实战一下吧

某个人给了我一个txt文件,里面主要有三部分,url,请求方式和响应码,这三种方式用,号分割,很有规律。但是数据量炒鸡多有一万多条。学了split()的方法就很简单了。以逗号作为分割点,其他就很容易了。

http://192.168.23.190/js/js.js,get,200
上代码:

# coding=utf-8
import re
#这里改为与你的文件名字一致
f=open('test.txt','rb+')
line=f.readlines()
f1=open('url.txt','a+')
for i in range(0,len(line)):
    url=re.split(',',line[i])
    if i==len(line)-1:
        f1.write(url[0])
    else:
        f1.write(url[0]+",")
    print u"完成分离第%s个url"%i
f.close()
f1.close()
print u"完成"


快来试试吧
















版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

python string 使用正则表达式 split()

By using (,), you are capturing the group, if you simply remove them you will not have this proble...

Python的替换函数——strip(),replace()和re.sub()

strip(),replace()和re.sub(),下面来讲讲这三个函数的用法

python字符串切割:str.split()和re.split()对比

1、str.split不支持正则及多个切割符号,不知切割符号左右边的各个数量。 >>> s1="aa bb cc" >>> s1.split(' ') ['aa', 'bb', '&#...

python正则表达式 re (二)split

re.split可以使用re.split来分割字符串,如:re.split(r’\s+’, text);将字符串按空格分割成一个单词列表。原型: re.split(pattern, string, ...

python split同时用多种字符分割字符串并去除空串 简单两行代码实现

代码使用的是python3的语法,python2只需要修改其中部分内容,同样可以使用 两行代码实现需求 这里把代码直接给出,方便大家直接使用 >>> s = 'asdn () dne we ** fe...

Java String split方法的正则表达式输入

今天遇到一个bug, 执行下面代码的时候输出为0. String[] temp = "8.5".split("."); System.out.println(temp.length); ...

java正则表达式详解与Spring.split()使用

java正则表达式详解与Spring.split()使用 标签: 正则 2016-04-18 16:49 1395人阅读 评论(0) 收藏 举报 本文章已收录于...

Nodejs正则表达式函数之match、test、exec、search、split、replace使用详解

记性不好的人,总是容易把记住的东西忘记掉!为了以后忘记的时候能够更快的找到并复习,最好还是做笔记!好记性不如赖笔头嘛! 1. Match函数 使用指定的正则表达式函数对字符串惊醒查找,并以数组形式...

python正则表达式介绍及使用方法

元字符: 1.[ ]     常用来指定一个字符集:[abc]; [a-z]; [0-9]     元字符在字符集中不起作用:[akm$]     补集匹配不在区间范围内的字符:[^5] ; [^ab...

[Python] re(正则表达式) 模块使用方法

关于正则表达式本身,就不多讲了,网上有好多教程。这里主要是讲下使用re模块中碰到的坑。。。re.compile把正则表达式编译为一个对象。可以选择把常用的正则表达式编译好,可以适当提高效率 举例:p...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)