例子3 正規表示式查詢

2021-08-28 00:18:00 字數 1225 閱讀 1717

查詢當前資料夾下所有的.txt檔案,查詢匹配使用者提供的正規表示式的所有行,列印到螢幕上。

1. 獲取當前目錄並list出當前目錄所包含的元素 -》os.listdir()

2. 迴圈出當前目錄下所有的txt檔案,追加到列表中 -》os.path.join()和os.path.splitext() # 分離檔名和副檔名

3. 獲取使用者輸入 -》re.compile(input("請輸入您要匹配的正規表示式:"))

4. 讀取所有txt檔案,並讀取每一行text -》readlines()

5. 判斷與使用者輸入的正規表示式是否匹配 -》re.search() #匹配包含

#!/usr/bin/python3

# -*- coding: utf-8 -*-

# 正則匹配中文,固定形式:\u4e00-\u9fa5

import re

import os

# 獲取檔案的路徑

filepath = os.path.abspath("..") + "/file/"

# print(filepath)

filelist = os.listdir(filepath)

# print(filelist)

txtdirlist =

for each in filelist:

newdir = os.path.join(filepath, each)

# print(newdir)

if os.path.isfile(newdir):

if os.path.splitext(newdir)[1] == ".txt":

# print("correct")

else:

print("該檔案不存在!")

# print(txtdirlist)

regex = re.compile(input("請輸入您要匹配的正規表示式:"))

# 測試資料:".*?([\u4e00-\u9fa5]+京)"

for x in txtdirlist:

with open(x, mode="r", encoding="utf-8") as txtfile:

txtfilecontent = txtfile.readlines()

for y in txtfilecontent:

if regex.search(y):

print(y)

正規表示式例子

前言 regular expressions 正規表示式,以下用re稱呼 對小弟來說一直都是神密的地帶,看到一些網路上的大大,簡單用re就決解了某些文字的問題,小弟便興起了學一學re的想法,但小弟天生就比較懶一些,總希望看有沒有些快速學習的方式,於是小弟又請出google大神,借由祂的神力,小弟在網...

正規表示式例子

include regex.hpp include include include include inttest regex match d d d fixed telephone std regex re pattern std vector str std regex match 判斷乙個正規...

Oracle 正規表示式例子

查詢value中不是純數字的記錄 select from fzq select from fzq where regexp like value,digit 以數字開頭,並且匹配多次,直到結尾 select from fzq where regexp like value,digit 以數字開頭,並...