python3.7正则表达式语法_【语言处理与Python】3.7用正则表达式为文本分词

正则表达式在平时做文本处理(爬虫程序去解析html中的字段,在分析log文件的时候需要抓取一些关键数据)的时候经常会用到。一般我们会使用到python的re库。如果正则表达式自己代码中反复被用到的时候,我们可以将这个正则表达式使用re.compile函数转换成一个o

分词是将字符串切割成可识破的构成一块语言数据的语言单元。 分词的简单方法 raw = """'When I'M a Duchess,'she said to herself, (not in a very hopeful tone... though), 'I won'thave any pepper in mykitchenATALL.Soupdoesvery... wellwithout--Maybeit's always pepper that makespeoplehot-tempered,'..."""#最简单的方法是在空格处分割文本re.split(r’\s+’,raw)

如果想更好的来使用正则表达式来起到分词的效果,还需要对正则表达式有更深的认识 符号 功能 \b 词边界(零宽度) \d 任一十进制数字(相当于[0-9]) \D 任何非数字字符(等价于[^ 0-9]) \s 任何空白字符(相当于[ \t\n\r\f\v]) \S 任何非空白字符(相当于[^ \t\n\r\f\v]) \w 任何字母数字字符(相当于[a-zA-Z0-9_]) \W 任何非字母数字1. 正则表达式基础 1.1. 简单介绍 正则表达式并不是Python的一部分。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大。得益于这一点,在提供了正则表达式的语言里,正则表达字符(相当于[^a-zA-Z0-9_]) \t 制表符 \n 换行符 NLTK的正则表达式分词器 >>>text = 'That U.S.A.poster-print costs$12.40...'>>>pattern =r'''(?x) #set flag to allow verbose regexps... ([A-Z]\.)+ #abbreviations, e.g. U.S.A.... | \w+(-\w+)* #words with optional internal hyphens... | \$?\d+(\.\d+)?%? #currency and percentages,e.g. $12.40,82%116... | \.\.\. #ellipsis... | [][.,;"'?():-_`] #these are separate tokens... '''>>>nltk.regexp_tokenize(text, pattern)['That', 'U.S.A.', 'poster-print', 'costs', '$12.40', '...']

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值