其他教程

其他教程

Products

当前位置:首页 > 其他教程 >

中文日期的正则表达式

GG网络技术分享 2025-03-18 16:15 7


问题描述:

我想提取字符串中中文字符的日期,例如: 我的火车五月三号开走。
如何通过Python 正则表达式把五月三号这个日期提出来 (保留中文字符)

网友观点:

import re

asd = '我的火车五月三号开走'

pattern = re.findall('\\u6211\\u7684\\u706b\\u8f66([\\u4e00\\u4e8c\\u4e09\\u56db\\u4e94\\u516d\\u4e03\\u516b\\u4e5d\\u5341\\u6708\\u53f7]*)',asd)

print(pattern)

import re

asd = '我的火车十二月十二号开走'

pattern = re.findall('\\u6211\\u7684\\u706b\\u8f66([\\u4e00\\u4e8c\\u4e09\\u56db\\u4e94\\u516d\\u4e03\\u516b\\u4e5d\\u5341\\u6708\\u53f7]*)',asd)

print(pattern)

import re

text = "我的火车五月三号开走。"

re.findall("[一二三四五六七八九十]{1,3}月[一二三四五六七八九十]{1,3}号", text)

import re

text = '我的火车五月三号开走。'

pat = re.compile(r'[一二三四五六七八九十]{1,}月[一二三四五六七八九十]{1,}号')

data = re.findall(pat,text)

print(data)

如果能直接给出代码最好了谢谢

下载码来一个

中文构建正则表达式

最近在写一个应用时大量用到了正则表达式,在写正则的过程中发现正则的使用场景其实是非常少的,无论是「判断」还是「提取」,所使用的语义都是有限的,那么完全可以做到使用限定范围的中文表达来构建正则表达式,本文将给出正则的有限语义以及如何使用中文构建正则的示例。

正则的判断与提取

正则有两种用途,一是用来「判断」给定的字符串是否满足指定正则;二是用来从大量字符串中「提取」满足正则的字符串。

之所以分为两种,是因为「提取」一定会有边界,而「判断」可能没有,这导致了同样的中文表达,判断和提取的正则是不同的。

举个例子,abe1+z 判断该字符串是否满足表达「字符串 a 跟着至少一个任意字符但不包含 be 再跟着字符串 z」,对应的正则是

标签:

提交需求或反馈

Demand feedback