python3正则表达式匹配数字_正则表达式的相关题目,匹配问题(python3)

import re

匹配数字年

year_pattern=”(\d{1,4}年)”

匹配月 月比较特殊 可能会出现01月 1月这两种情况 还有10月,12月

month_pattern=”(([0?][1-9])月)|(([1?][0-2])月)|([1-9]月)”

匹配日 保证匹配的数字是1-31,暂未考虑单双月和2月 闰年

day_pattern=”([0?][1-9]日)|([1?][0-9]日)|([2?][1-9]日)|([3][0-1]日)”

date_pattern=”(\d{1,4}年)((([0?][1-9])月)|(([1?][0-2])月)|([1-9]月)?)(([0?][1-9]日)|([1?][0-9]日)|([2?][1-9]日)|([3][0-1]日)?)”

def get_date(val):

res=re.search(date_pattern,val)

if res:

return res.group()

return None

def findall(content):

ree = re.compile(date_pattern)

result = re.findall(ree,content)

if result: #是个list

return result

def readtxt():

youtxtpath = “./aa.txt”

with open(youtxtpath,”r”) as f:

line = f.readline()

result = re.search(r”自然语言”,line)

if result: #匹配到

print(line) #打印文本中包含:“自然语言”这个字符串的行内容

result = re.search(r”[,.?!].*期[,.?!]”,line) #打印以“期”字结尾的句子。 标点符号有多岁自己处理

if result:

print(line)

自然语言处理的难点:错别字,新词,语言与行为不一致啊,等等。。。

自然语言处理处理的层次: 1、语音层次2、词形层次3、词汇层次4、句法层次5、语义层次6、语用层次7、语境层次

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值