我想在Python中编写一个正则表达式,从下面的字符串中取出'28 june 1994'并将june转换为6:
fur = "missed intake office visit on 28 june 1994 at sierra vista nursing homesuicidal behavior hx of suicidal be"
我试过了:
fur.extract(r'(?P<day>\d?\d)\s(?P<month>\W+)\s(?P<year>\d+)')
june可以采取多种形式,包括:'jun','june','june','june;'等。
答案 0 :(得分:0)
你只需要改变六月或其他月份吗?如果你只需要改变六月,我想这已经足够了
re.sub("\d{1,}\sjun[\,e\;]?\s\d{4}","6",yourstring)
答案 1 :(得分:0)
你可以试试这个:
import re
fur = "missed intake office visit on 28 june 1994 at sierra vista nursing homesuicidal behavior hx of suicidal be"
data = re.search("(?P<day>\d{1,})\s(?P<month>[a-zA-Z]+)\s(?P<year>\d{4})", fur)
print(data.groupdict())
输出:
{'month': 'june', 'day': '28', 'year': '1994'}
答案 2 :(得分:0)
您可以使用此正则表达式:
(\d{2})[\s]([a-zA-Z]+)[\s](\d{4})
这将输出三组:
第一个:是一天。
第二个:是月份名称。
第三个:是年份
输出将是:
Full match 30-42 `28 june 1994`
Group 1. 30-32 `28`
Group 2. 33-37 `june`
Group 3. 38-42 `1994`