加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

我如何在Python中使用带有正则表达式的f-string

发布时间:2020-12-20 12:02:16 所属栏目:Python 来源:网络整理
导读:如果我只使用原始字符串但是只要将f添加到r,此代码就可以工作.它停止工作.有没有办法让f字符串与原始字符串一起工作? import relines = ''' 04/20/2009; 04/20/09; 4/20/09; 4/3/09 Mar-20-2009; Mar 20,2009; March 20,2009; Mar. 20,2009; Mar 20 2009; 2
如果我只使用原始字符串但是只要将f添加到r,此代码就可以工作.它停止工作.有没有办法让f字符串与原始字符串一起工作?

import re

lines = '''

    04/20/2009; 04/20/09; 4/20/09; 4/3/09
    Mar-20-2009; Mar 20,2009; March 20,2009; Mar. 20,2009; Mar 20 2009;
    20 Mar 2009; 20 March 2009; 20 Mar. 2009; 20 March,2009
    Mar 20th,2009; Mar 21st,2009; Mar 22nd,2009
    Feb 2009; Sep 2009; Oct 2010
    6/2008; 12/2009
    2009; 2010

'''
rmonth = 'a'
regex = fr'(d{1,2})/(d{1,2})/(d{4}|d{2})'
date_found = re.findall(regex,lines)

date_found

解决方法

Python中的新fstrings以自己的方式解释括号.您可以通过将它们加倍来转义要在输出中看到的括号:

regex = fr'(d{{1,2}})/(d{{1,2}})/(d{{4}}|d{{2}})'

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读