跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 想要读取一个文件并筛选特定的文件名该怎么做呢
未分類
22 8 月 2020

想要读取一个文件并筛选特定的文件名该怎么做呢

想要读取一个文件并筛选特定的文件名该怎么做呢

資深大佬 : jeblur 6

Very Very New to Python… 我的想法是先 with open 打开文件,然后读每行的内容,并用正则表达式筛选特定的内容。

但查了很多代码好像都没能做成

import re import os import sys  stringToMatch = '[^/]*.js' matchedLine = ''  with open('access_log.txt') as f:         for line in f:                 if stringToMatch in line:                         print line 

上面是其中一个。。 运行后完全没有输出[一脸懵]

大佬有話說 (3)

  • 資深大佬 : imn1

    stringToMatch = r'[^/]+.js’
    …
    if re.search(stringToMatch, line):
    …

  • 主 資深大佬 : jeblur

    @imn1 太感谢了!可以输出 line 了,还想问下如果要匹配特定的值,比如代码中的*.js 文件,要换掉 search 这个方法吗。关于这个正则表达式我能理解的是匹配到第一个 /开始然后以.js 结尾,最后我需要加$结束吗。

    抱歉问了这么多问题:>

  • 資深大佬 : imn1

    你理解错了
    这个正则是 一个或多个不是“/”的字符后面紧接.js ,在一行里面的任意位置,没有方括号的^才是行首
    如果你确定匹配结尾是.js 才用$,如果在行中间就不需要( line 最后应该是个换行符,不过你可以测试一下能否匹配)
    re 里面有很多匹配的方法,只是这个 search 用于“是否匹配”比较简单,根据需要你可以用其他的

    你需要学习正则,以及 re 的方法

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具