導航:首頁 > 編程語言 > python正則表達式應用

python正則表達式應用

發布時間:2024-07-04 02:43:42

python 正則表達式,怎樣匹配以某個字元串開頭,以某個字元串結尾的情況

python正則匹配以xx開頭以xx結尾的單詞的步驟:

1、假設需要匹配的字元串為:site sea sue sweet see case sse ssee loses需要匹配的為以s開頭以e結尾的單詞。正確的正則式為:sS*?e

2、使用python中re.findall函數表示匹配字元串中所有的可能選項,re是python里的正則表達式模塊。findall是其中一個方法,用來按照提供的正則表達式,去匹配文本中的所有符合條件的字元串。

3、代碼和結果如下:

text ='site sea sue sweet see case sse ssee loses'

re.findall(r'sS*?e',text)

結果為:['site', 'sue', 'see', 'sse', 'ssee']

(1)python正則表達式應用擴展閱讀:

python正則匹配,以某某開頭某某結尾的最長子串匹配

代碼如下:

regVersions = re.search(r'(V|v)[0-9].*[0-9]', filename)

if regVersions:

print regVersions.group()


② Python其實很簡單 第十一章 正則表達式

正則表達式是一個特殊的字元序列,它用來檢查一個字元串是否與某種模式匹配。正則表達式在編譯程序中至關重要,但並不是每個人都需要特別深入的學習和掌握。在此,只介紹一些最基本的應用。

1、元字元

元字元是構成正則表達式的一些特殊字元。在正則表達式中,元字元被賦予了新的含義。

下面介紹一些常用的元字元及其含義:

. 匹配除換行符以外的任意字元。

w 匹配字母、數字、下劃線或漢字。

W 匹配w所匹配的字元以外的字元。

s 匹配單個空白符(包括Tab鍵和換行符)。

S 匹配除s匹配的字元以外的字元。

d 匹配數字。

b 匹配單詞的分界符,如:空格、標點符號或換行符。

^ 匹配字元串的開始

$ 匹配字元串的結束

2、限定符

限定符是在正則表達式中用來指定數量的字元。常用的限定符有:

? 匹配前面的字元0或1次。如:zo?m可以匹配zom和zm,但不能匹配 zoom

+ 匹配前面的字元1或n次。如:zo?m可以匹配zom和zoom,但不能匹配zm

* 匹配前面的字元0或n次。如:zo?m可以匹配zom、zoom和zm

{n} 匹配前面的字元n次。如:zo{2}m可以匹配zoom,但不能匹配zom和zm

{n,} 匹配前面的字元至少n次。如:zo{1,}m可以匹配zom和zoom,但不能匹配zm

{n,m} 匹配前面的字元至少n次,最多m次。如:zo{1,2}m可以匹配zom和zoom,但不能匹配zm

3、方括弧」[ ]」的用途

方括弧「[ ]」里可以列出某個字元范圍。如:[aeiou]表示匹配任意一個母音字母,[zqsl]表示匹配姓氏「趙錢孫李」的拼音第一個字母。

4、排除字元

方括弧」[ ]」中的「^」字元表示排除的意思,如:[^aeiou]表示匹配任意一個非母音字母的字元。

5、選擇字元

字元「|」相當於「或」。如:(^d{3}[-]d{8})|(^d{4}[-]d{7})$可以匹配形如」 - 」或「 - 」的電話號碼格式。

6、轉義字元

對於已經用於定義元字元和限定符的字元,需要加轉義符「」來表示。

如:為了匹配形如「192.168.0.1」的IPv4地址(1~255.0~255.0~255.0~255),可以用這樣的正則表達式:^(25[0-5]|2[0-4][0-9]|[0,1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]).(25[0-5]|2[0-4][0-9]|[0,1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0).(25[0-5]|2[0-4][0-9]|[0,1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0).(25[0-5]|2[0-4][0-9]|[0,1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])$

這里解釋一下第一段IP地址的規則,取值范圍為1~255,可分解為以下情況:

250~255:25[0-5];

200~249:2[0-4][0-9];

100~199:[01]{1}[0-9]{2};

0~99: [0-9]{1}[1-9]

再加上」.」: .

其他三段地址和第一段相似。

7、「( )」可以用於分組

在正則表達式中,用「( )」括起來的部分是一個整體。

8、r(或R)的意義

在正則表達式中,為了保證模式字元串為原生字元串(沒有經過加工處理的字元串),可以在模式字元串前加上一個字元『r』或『R』。例如:

# 這里用到對的re.match()方法接下來介紹

>>> import re # 導入re模塊

>>> re.match('bPy[a-z]+','Python') # 表達式'bPy[a-z]+'不能匹配』Python』

>>> re.match('bPy[a-z]+','Python') # 表達式'bPy[a-z]+'可以匹配』Python』

在上述代碼中,原本要用作匹配單詞開始或結束的元字元』b』在表達式中字元串中會被視為轉義一個字元『b』,為了轉義』b』就不得不再加一個』』符號。

也可以採用下面的方法:

>>> re.match(r'bPy[a-z]+','Python') #加字元』r』,可以保證原生字元串

9、match()方法

Match()方法 嘗試從字元串的起始位置匹配一個模式,如果不是起始位置匹配成功的話,match() 就返回 none。

語法格式:

re.match(pattern, string, [flags])

其中,pattern表示匹配的正則表達式;string是要匹配的字元串;flags表示標志位,用於控制正則表達式的匹配方式,如:re.I表示不區分大小寫。

例:

import re #導入re模塊

print(re.match('www', 'www.python.org/').span()) #span()函數可以獲取匹配的位置

print(re.match('org', 'www.python.org'))

輸出結果為:

(0, 3) #在位置0到3(不包括3)匹配成功

None #從起始位置未能匹配成功

10、search()方法

search()方法用於在整個字元串中搜索第一個匹配的值,如果匹配成功,則返回Match對象,否則返回None。

語法格式:

re.search(pattern, string, [flags])

其中,pattern表示匹配的正則表達式;string是要匹配的字元串;flags表示標志位,用於控制正則表達式的匹配方式,如:re.I表示不區分大小寫。

例如:

>>> re.search(r'Pyw+','It's easy to use Python, but it's not easy to learn Python.')

可以看出,目標字元串「It's easy to use Python, but it's not easy to learn Python.」中一共有兩個『Python』,search()方法可以從字元串的起始位置開始查找到『Python』,當找到第一個匹配值後就停止查找,返回位置信息。

match()和search()的比較

match()要求目標字元串的起始位置就能匹配,search()對目標字元串全段進行逐次匹配,只要首次匹配成功就停止匹配。

請看下例:

>>> import re

>>> print(re.match(r'Pyw+','It's easy to use Python, but it's not easy to learn Python.'))

輸出結果:None

11、findall()方法

findall()方法用於在整個字元串中搜索所有匹配的值,如果匹配成功,則返回以匹配值為元素的列表,否則返回空列表。

語法格式:

re.findall(pattern, string[, flags])

其中,pattern表示匹配的正則表達式;string是要匹配的字元串;flags表示標志位,用於控制正則表達式的匹配方式,如:re.I表示不區分大小寫。

例:

>>> import re

>>>print(re.findall(r'Pyw+','It's easy to use Python, but it's not easy to learn Python.'))

輸出結果:['Python', 'Python']

可以看出,findall()的結果沒有指出匹配的具體位置。

12、正則表達式的應用

字元串替換

這里要用到sub()方法。它的語法格式如下:

re.sub(pattern, repl, string [,count] [,flgs])

其中,pattern是模式字元串;repl是用於替換的字元串;string是原字元串;可選參數count為模式匹配後替換的最大次數,省缺表示替換所有的匹配;可選參數flags的意義與前面的方法的該參數一致。

例:

>>> import re

>>> str1='x=36.567 y=123.234'

>>> str2=re.sub('.d+','',str1) #用空格代替小數點及其後的數字

>>> print(str2)

輸出結果:x=36 y=123

分隔字元串

這里要用到split()方法。它的返回值為一個列表,它的語法格式如下:

re.split(pattern, string [,maxsplit] [,flgs])

其中,pattern是模式字元串;string是原字元串;可選參數maxsplit為最大拆分次數,省缺表示拆分所有的匹配;可選參數flags的意義與前面的方法的該參數一致。

例:

>>> import re

>>> str='白日依山盡,黃河入海流。欲窮千里目,更上一層樓!'

>>> re.split(r',|。|!',str) #按照「,」、「。」、「!」分隔字元串。

['白日依山盡', '黃河入海流', '欲窮千里目', '更上一層樓', '']

注意,返回值列表中多出了一個空字元。

③ python3 正則表達式如何實現中文模糊匹配替換並輸出

要使用正則表達式實現中文模型李糊匹配替換並輸出,你可以使用 Python 的 re 模塊。以下是一個示例代碼,讀取一個名為 input.txt 的文件,將其中的 "竹某嬋" 或 "竹嬋某" 替換為 "竹嬋嬋",然後將結果保存到一個名為 output.txt 的新文件中:

import re

# 定義一個函數來實現替換操作
def replace_pattern(match_obj):
return "竹嬋嬋"

# 讀取文件內容
with open("input.txt", "r", encoding="utf-8") as file:
content = file.read()

# 使用正則表達式進行模糊匹配替換
pattern = r"竹(?:某|嬋)(?:嬋|某)"
replaced_content = re.sub(pattern, replace_pattern, content)

# 將替換後的內容寫入新的文件
with open("output.txt", "w", encoding="utf-8") as file:
file.write(replaced_content)

在這個例子中,正則表達式 r"竹(?:某|嬋)(?:嬋|某)" 用於匹配 "竹某嬋" 或 "竹嬋某"。(?:...) 是一個非捕獲組,它表示匹配其中的任意一個字元,但不會捕獲該組。這里的組分別包含 "某" 和 "嬋",因此可以匹配 "竹某嬋" 或 "竹嬋某"。接下來,re.sub 函數用於替換匹配到的字元串。這里我們提供了一個替換函行緩數 replace_pattern,它直接返回 "竹嬋嬋"。最後,將替換後的內容寫入一個名為 output.txt 的新文件。

…………

回復:

如果要實現匹配任意特定中文字元,可以使用 Unicode 的中文字元卜帶遲范圍。以下是修改後的示例代碼,可以將 "竹某嬋" 或 "竹嬋某" 替換為 "竹嬋嬋",其中 "某" 為任意中文字元:

import re

# 定義一個函數來實現替換操作
def replace_pattern(match_obj):
return "竹嬋嬋"

# 讀取文件內容
with open("input.txt", "r", encoding="utf-8") as file:
content = file.read()

# 使用正則表達式進行模糊匹配替換
pattern = r"竹[u4e00-u9fa5]嬋|竹嬋[u4e00-u9fa5]"
replaced_content = re.sub(pattern, replace_pattern, content)

# 將替換後的內容寫入新的文件
with open("output.txt", "w", encoding="utf-8") as file:
file.write(replaced_content)

在這個例子中,正則表達式 r"竹[u4e00-u9fa5]嬋|竹嬋[u4e00-u9fa5]" 用於匹配 "竹某嬋" 或 "竹嬋某",其中 "某" 為任意中文字元。[u4e00-u9fa5] 用於匹配任意一個中文字元。接下來,re.sub 函數用於替換匹配到的字元串。這里我們提供了一個替換函數 replace_pattern,它直接返回 "竹嬋嬋"。最後,將替換後的內容寫入一個名為 output.txt 的新文件。

④ Python正則表達式的幾種匹配用法

下面列出: 1.測試正則表達式是否匹配字元串的全部或部分regex=ur"" #正則表達式
if re.search(regex, subject): do_something()else: do_anotherthing() 2.測試正則表達式是否匹配整個字元串 regex=ur"/Z" #正則表達式末尾以/Z結束
if re.match(regex, subject): do_something()else: do_anotherthing() 3.創建一個匹配對象,然後通過該對象獲得匹配細節(Create an object with details about how the regex matches (part of) a string) regex=ur"" #正則表達式
match = re.search(regex, subject)if match: # match start: match.start() # match end (exclusive): atch.end() # matched text: match.group() do_something()else: do_anotherthing() 4.獲取正則表達式所匹配的子串(Get the part of a string matched by the regex) regex=ur"" #正則表達式
match = re.search(regex, subject)if match: result = match.group()else: result ="" 5. 獲取捕獲組所匹配的子串(Get the part of a string matched by a capturing group) regex=ur"" #正則表達式
match = re.search(regex, subject)if match: result = match.group(1)else: result ="" 6. 獲取有名組所匹配的子串(Get the part of a string matched by a named group) regex=ur"" #正則表達式
match = re.search(regex, subject)if match:result = match.group"groupname")else:result = "" 7. 將字元串中所有匹配的子串放入數組中(Get an array of all regex matches in a string) result = re.findall(regex, subject) 8.遍歷所有匹配的子串(Iterate over all matches in a string) for match in re.finditer(r"<(.*?)/s*.*?//1>", subject) # match start: match.start() # match end (exclusive): atch.end() # matched text: match.group() 9.通過正則表達式字元串創建一個正則表達式對象(Create an object to use the same regex for many operations) reobj = re.compile(regex) 10.用法1的正則表達式對象版本(use regex object for if/else branch whether (part of) a string can be matched) reobj = re.compile(regex)if reobj.search(subject): do_something()else: do_anotherthing() 11.用法2的正則表達式對象版本(use regex object for if/else branch whether a string can be matched entirely) reobj = re.compile(r"/Z") #正則表達式末尾以/Z 結束
if reobj.match(subject): do_something()else: do_anotherthing() 12.創建一個正則表達式對象,然後通過該對象獲得匹配細節(Create an object with details about how the regex object matches (part of) a string) reobj = re.compile(regex) match = reobj.search(subject)if match: # match start: match.start() # match end (exclusive): atch.end() # matched text: match.group() do_something()else: do_anotherthing() 13.用正則表達式對象獲取匹配子串(Use regex object to get the part of a string matched by the regex) reobj = re.compile(regex) match = reobj.search(subject)if match: result = match.group()else: result ="" 14.用正則表達式對象獲取捕獲組所匹配的子串(Use regex object to get the part of a string matched by a capturing group) reobj = re.compile(regex) match = reobj.search(subject)if match: result = match.group(1)else: result ="" 15.用正則表達式對象獲取有名組所匹配的子串(Use regex object to get the part of a string matched by a named group) reobj = re.compile(regex) match = reobj.search(subject)if match: result = match.group("groupname")else: result ="" 16.用正則表達式對象獲取所有匹配子串並放入數組(Use regex object to get an array of all regex matches in a string) reobj = re.compile(regex) result = reobj.findall(subject) 17.通過正則表達式對象遍歷所有匹配子串(Use regex object to iterate over all matches in a string) reobj = re.compile(regex)for match in reobj.finditer(subject): # match start: match.start() # match end (exclusive): match.end() # matched text: match.group()字元串替換 1.替換所有匹配的子串 #用newstring替換subject中所有與正則表達式regex匹配的子串
result = re.sub(regex, newstring, subject) 2.替換所有匹配的子串(使用正則表達式對象) reobj = re.compile(regex) result = reobj.sub(newstring, subject) 字元串拆分 1.字元串拆分 result = re.split(regex, subject) 2.字元串拆分(使用正則表示式對象) reobj = re.compile(regex) result = reobj.split(subject)

⑤ 一文秒懂python正則表達式常用函數

01 Re概覽
Re模塊是python的內置模塊,提供了正則表達式在python中的所有用法,默認安裝位置在python根目錄下的Lib文件夾(如 ..\Python\Python37\Lib)。主要提供了3大類字元串操作方法:

字元查找/匹配

字元替換

字元分割

由於是面向字元串類型的模塊,就不得不提到字元串編碼類型。re模塊中,模式串和搜索串既可以是 Unicode 字元串 (常用str類型) ,也可以是8位位元組串 (bytes,2位16進制數字,例如\xe5) , 但要求二者必須是同類型字元串。
02 字元串查找/匹配
預編譯:compile

在介紹查找和匹配函數前,首先需要知道re的compile函數,該函數可以將一個模式串編譯成正則表達式類型,以便後續快速匹配和復用
import re pattern = re.compile(r'[a-z]{2,5}') type(pattern) #re.Pattern
此例創建了一個正則表達式式對象 (re.pattern) ,命名為pattern,用於匹配2-5位小寫字母的模式串。後續在使用其他正則表達式函數時,即可使用pattern進行方法調用。

匹配:match

match函數用於從文本串的起始位置開始匹配,若匹配成功,則返回相應的匹配對象,此時可調用group()方法返回匹配結果,也可用span()方法返回匹配起止下標區間;否則返回None
import re pattern = re.compile(r'[a-z]{2,5}') text1 = 'this is a re test' res = pattern.match(text1) print(res) # if res:  print(res.group()) #this  print(res.span()) #(0, 4) text2 = '是的, this is a re test' print(pattern.match(text2))#None
match函數還有一個變形函數fullmatch,當且僅當模式串與文本串剛好全部匹配時,返回一個匹配對象,否則返回None

搜索:search

match只提供了從文本串起始位置匹配的結果,如果想從任意位置匹配,則可調用search方法,與match方法類似,當任意位置匹配成功,則立即返回一個匹配對象,也可調用span()方法獲取起止區間、調用group方法獲得匹配文本串
import re pattern = re.compile(r'\s[a-z]{2}') text1 = 'this is a re test' res = pattern.search(text1) print(res) # if res:  print(res.group()) #is  print(res.span()) #(4, 7) pattern2 = re.compile(r'\s[a-z]{5}') text2 = '是的,this is a re test' print(pattern2.search(text2))#None
match和search均用於匹配單個結果,唯一區別在於前者是從起始位置開始匹配,而後者從任意位置匹配,匹配成功則返回一個match對象。

全搜索:findall/finditer

幾乎是最常用的正則表達式函數,用於尋找所有匹配的結果,例如在爬蟲信息提取中,可非常方便地提取所有匹配欄位
import re pattern = re.compile(r'\s[a-z]{2,5}') text1 = 'this is a re test' res = pattern.findall(text1) print(res) #[' is', ' re', ' test']
findall返回的是一個列表對象類型,當無匹配對象時,返回一個空列表。為了避免因同時返回大量匹配結果佔用過多內存,可以調用finditer函數返回一個迭代器類型,其中每個迭代元素是一個match對象,可繼續調用group和span方法獲取相應結果
import re pattern = re.compile(r'\s[a-z]{2,5}') text1 = 'this is a re test' res = pattern.finditer(text1) for r in res:  print(r.group()) """  is  re  test """
當匹配模式串較為簡單或者僅需單詞調用時,上述所有方法也可直接調用re類函數,而無需事先編譯。此時各方法的第一個參數為模式串。
import re pattern = re.compile(r'\d{2,5}') text = 'this is re test' re.findall('[a-z]+', text) #['this', 'is', 're', 'test'] 03 字元串替換/分割
替換:sub/subn

當需要對文本串進行條件替換時,可調用re.sub實現 (當然也可先編譯後再用調用實例方法) ,相應參數分別為模式串、替換格式、文本串,還可以通過增加預設參數限定替換次數和匹配模式。通過在模式串進行分組,可實現字元串的格式化替換(類似字元串的format方法),以實現特定任務。
import re text = 'today is 2020-03-05' print(re.sub('-', '', text)) #'today is 20200305' print(re.sub('-', '', text, 1)) #'today is 202003-05' print(re.sub('(\d{4})-(\d{2})-(\d{2})', r'\2/\3/\1', text)) #'today is 03/05/2020'
re.sub的一個變形方法是re.subn,區別是返回一個2元素的元組,其中第一個元素為替換結果,第二個為替換次數
import re text = 'today is 2020-03-05' print(re.subn('-', '', text)) #('today is 20200305', 2)
分割:split

還可以調用正則表達式實現字元串的特定分割,相當於.split()方法的一個加強版,實現特定模式的分割,返回一個切割後的結果列表
import re text = 'today is a re test, what do you mind?' print(re.split(',', text)) #['today is a re test', ' what do you mind?'] 04 總結
python中的re模塊提供了正則表達式的常用方法,每種方法都包括類方法調用(如re.match)或模式串的實例調用(pattern.match)2種形式

常用的匹配函數:match/fullmatch

常用的搜索函數:search/findall/finditer

常用的替換函數:sub/subn

常用的切割函數:split

還有其他很多方法,但不是很常用,具體可參考官方文檔

另外,python還有第三方正則表達式庫regex可供選擇

到此這篇關於一文秒懂python正則表達式常用函數的文章就介紹到這了,希望大家以後多多支持!

⑥ python的正則表達式

1,正則表達式的一些內容

        正則表達式主要是用來匹配文本中需要查找的內容,例如在一片文章中找出電話號碼,就中國的來說11位純數字(不說座機),則使用"d{11}" 意味匹配數字11次,就能准確的查找出文本中的電話號碼. 還有就是在編寫網路爬蟲的時候需要提取很多超鏈接再次進行爬取,使用正則表達式就很方便.直接匹配http開頭就行,當然也可以使用beautifulsoup的select方法.

看下面的程序看看正則表達提取文本中的郵箱:


w 匹配字母,數字,下劃線 

+ 匹配1次或者多次
re是正則表達式的工具包,工具包出錯的話在anaconda的命令行輸入"pip install re"安裝,其他的工具包也是如此.

re.compile()中的r示意不是轉義字元,也就是保持後面字元串原樣,findall返回一個列表.下面還有一個版本的程序略有不同.


compile的另一個參數re.IGONORECASE(忽略大小寫),還可以是re.DORALL,多行模式,具體功能也是模糊不清,不過在使用通配符 . 匹配的時候加上re.DOTALL參數能夠匹配換行.如果希望忽略大小寫和多行模式都開啟可以使用re.compile(r'....',re.IGNORECASE|re.DOTALL) .

表達式使用( ),對匹配到的內容分為3組 也就是(w+)出現字母,數字,下劃線一次或多次,這個分組就是下面使用match對象的grou()方法的時候的參數.不給參數和參數0都是得到整個匹配到的內容,  參數1得到第一個括弧匹配到的內容,以此類推參數2和3,如果沒有括弧分組的話使用參數會出現錯誤.
search( )查找和正則式匹配的內容,只匹一次後面的那個找不到.返回一個match對象


w 匹配字母,數字,下劃線

W 匹配字母,數字.下劃線之外的所有字元

d 匹配數字

D 匹配非數字

s 匹配空格,製表符,換行符

S匹配除空格製表符,換行符之外的其他字元

[ .... ]定義自己的匹配,如[aeiouAEIOU ]匹配所有的母音字母,注意不是匹配單詞.

{最少次數,最多次數},例如{3,9} 匹配3-9次,{ ,10}匹配0-10次. 默認為匹配最多次數(貪心匹配),非貪心模式在後面加上問號 


?  可選 0次或者1次吧  

+匹配1次或多次

*匹配0次或者多次

^ 判斷開頭 ^d 如果待匹配串是數字開頭則返回第一個數字

$判斷結尾  d$  如果待匹配串是數字結尾則返回最後一個數字

.   通配符,匹配除換行之外的所有字元

   d{11}  匹配數字11次

    . * 匹配所有字元除 換行

[a-zA-Z0-9._%+-]  小寫和大寫字母、數字、句點、下劃線、百分號、加號或短橫

[a-zA-Z]{2,4} 匹配字母 2 - 4次

⑦ Python中正則表達式的匹配規則總結

其他關於Python的總結文章請訪問: https://www.jianshu.com/nb/47435944

正則表達式用來匹配字元串,在python中可以使用 re 模塊來完成,本篇做一個對正則表達式的匹配規則的總結

在上述的精確匹配後可以跟上一些符號來進行模糊的匹配:

可以使用中括弧的形式進行范圍匹配,中括弧表達式後邊可以跟上上述模糊匹配的符號來表示數量

多個條件可以 緊跟著寫在同一個中括弧中 ,比如:
[a-zA-Z] :匹配一個大、小寫字母

閱讀全文

與python正則表達式應用相關的資料

熱點內容
聯想伺服器如何進入陣列卡 瀏覽:848
拍照文件夾怎麼用 瀏覽:974
公司清演算法定代表人章交回本人 瀏覽:639
xfs為什麼不能壓縮 瀏覽:409
獲取手機數據源碼 瀏覽:962
迪傑斯特拉演算法matlab 瀏覽:915
迅雷百度雲文件解壓密碼 瀏覽:464
為什麼好多app找不到注銷了 瀏覽:289
javazxing二維碼生成 瀏覽:122
演算法遞推式 瀏覽:147
聯想載入加密鎖失敗 瀏覽:209
賽拉圖空調壓縮機多少錢 瀏覽:196
linuxphppdo擴展 瀏覽:791
如何解決美國伺服器網路延遲 瀏覽:424
手機看app閃退是什麼問題 瀏覽:692
怎麼智能電視安裝不了app 瀏覽:886
python平衡組 瀏覽:374
一邊是柱子一邊是梁怎麼加密 瀏覽:49
麒麟操作系統反編譯 瀏覽:18
sqlpdf教程 瀏覽:243