• 技术文章 >常见问题 >Python常见问题

    python如何匹配txt

    silencementsilencement2020-02-15 10:41:37原创2418

    python很强大,python的正则表达式很好用

    下面就说说怎么用python的正则表达式来匹配txt文本中的字符吧。

    首先,要知道自己匹配的字符串是什么形式的,然后根据自己的字符串形式来写出对应的正则表达式

    例如这次,我需要匹配的是数字加逗号加数字的字符串形式

    所以我的正则表达式的形式如下

    rule_name = r'\b(\d*,+\d+)\s'
    compile_name = re.compile(rule_name, re.M)

    \d代表数组,然后后面带符号的话,符号要在*后面添加,\s是空格还是tab之类的,\b是代表间断,具体也不清楚是什么。。r代表的是

    生字符串的意思,然后()里面的是最后得到的字符串,在这里,我的字符串不需要那些空格或者间断之类的,所以就在那些\d那里加了括

    号,具体是要用其他代表形式的话,可以直接百度,找到例如字母的表达。

    然后下面就要用compile,里面的re.M的意思就是多行匹配,具体什么意思我也不是很清楚,不知道是文本不止一行时用,还是说匹配的

    字符有多行的时候用,但是我这样写并没有出现错误,所以就继续这样写了。

    然后就是打开txt文件,这个很简单

    #"获取文本"
    f = open(path)
    st = f.read()

    path就是文本的路径了

    之后直接调用findall函数,可以直接找到在这个文本里的所有符合表达式的字符串,并且返回一个list,里面就是找到的所有字符串了

    res_name = compile_name.findall(st)

    这个res_name就是一个list,里面包含了找到的所有字符串了

    调用的时候,直接res_name[i]就可以找到对应的第i个字符串了

    推荐学习《Python教程》。

    专题推荐:txt
    上一篇:python可以编译成exe程序吗 下一篇:Python打开文件报错怎么办

    相关文章推荐

    • Python中正则表达式的巧妙使用• Python正则表达式的七个使用范例• python正则表达式使用

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网