1樓:匿名使用者
\w沒有加引號
print re.sub("\w","*",__string3)
python 正規表示式如何擷取字串中間的內容
2樓:花臂華盛頓
啟動ipython先匯入re模組
這裡我用到了findall全域性匹配,分為兩部分,前面是正則,後面是要匹配的字串
得到一個元祖
通過變數a 就能列印出想要的字串
在 python 中,我們可以使用內建的 re 模組來使用正規表示式,re 模組提供了不少有用的函式,用以匹配字串,比如:
re 模組的一般使用步驟如下:
使用 ***pile 函式將正規表示式的字串形式編譯為一個 pattern 物件
通過 pattern 物件提供的一系列方法對文字進行匹配查詢,獲得匹配結果(一個 match 物件)
最後使用 match 物件提供的屬性和方法獲得資訊,根據需要進行其他的操作
findall 方法的使用形式如下:
findall(string[, pos[, endpos]])
其中,string 是待匹配的字串,pos 和 endpos 是可選引數,指定字串的起始和終點位置,預設值分別是 0 和 len (字串長度)。
findall 以列表形式返回全部能匹配的子串,如果沒有匹配,則返回一個空列表。
3樓:
是需要從字串中提取數
字嗎如圖所示:
正規表示式是一個特殊的字元序列,它能幫助你方便的檢查一個字串是否與某種模式匹配。
python 自1.5版本起增加了re 模組,它提供 perl 風格的正規表示式模式。
re 模組使 python 語言擁有全部的正規表示式功能。
***pile 函式根據一個模式字串和可選的標誌引數生成一個正規表示式物件。該物件擁有一系列方法用於正規表示式匹配和替換。
re 模組也提供了與這些方法功能完全一致的函式,這些函式使用一個模式字串做為它們的第一個引數。
re.match函式
re.match 嘗試從字串的起始位置匹配一個模式,如果不是起始位置匹配成功的話,match()就返回none。
函式語法:
re.match(pattern, string, flags=0)
re.search方法
re.search 掃描整個字串並返回第一個成功的匹配。
函式語法:
re.search(pattern, string, flags=0)
re.match與re.search的區別
re.match只匹配字串的開始,如果字串開始不符合正規表示式,則匹配失敗,函式返回none;而re.search匹配整個字串,直到找到一個匹配。
4樓:自我西郊
import re
pattern = re.***pile("forum\/(\d*)\/topic\/(\d*)")
res = pattern.search('forum/135/topic/794150').groups()
print res[0],res[1]
5樓:夢裡尋你我他
\w*\/(\d+)\/\w*\/(\d+)
6樓:隨風飄揚
import re
string = "forum/135/topic/794150"
print(re.findall(r'forum/(\d+)/topic/(\d+)',string))
7樓:匿名使用者
re.findall("\d",a)
8樓:t仝在路上
用re.findall
python中re模組的***pile函式應該怎麼用?
9樓:日time寸
python通過re模組提供對正規表示式的支援。使用re的一般步驟是先使用re.***pile()函式,將正規表示式的字串形式編譯為pattern例項,然後使用pattern例項處理文字並獲得匹配結果(一個match例項),最後使用match例項獲得資訊,進行其他的操作。
舉一個簡單的例子,在尋找一個字串中所有的英文字元:
import re
pattern = re.***pile('[a-za-z]')result = pattern.findall('as3siopdj#@23awe')
print result
# ['a', 's', 's', 'i', 'o', 'p', 'd', 'j', 'a', 'w', 'e']
10樓:匿名使用者
這裡面表示的是一個正規表示式語句的啦,
參考這個看看吧
python 的 re模組中如何使用變數代替要匹配的字串?
11樓:匿名使用者
這麼試試:
xh = raw_input("請輸入你的手機型號:")
xh_re = re.***pile(xh+'.*?¥(\d)',re.dotall)
12樓:匿名使用者
用這個表示式(?<=34)\d*?(?=78)
python中,re模組怎麼去掉字串
13樓:匿名使用者
re.split
可以使用re.split來分割字串,如:re.split(r』\s+』, text);將字串按空格分割成一個單詞列表。
原型:re.split(pattern, string, maxsplit=0)
通過正規表示式將字串分離。如果用括號將正規表示式括起來,那麼匹配的字串也會被列入到list中返回。maxsplit是分離的次數,maxsplit=1分離一次,預設為0,不限制次數。
例如:re.split(『\w+』, 『words, words, words.』)
[『words』, 『words』, 『words』, 」]
如果字串不能匹配,將會返回整個字串的list。
re.split(「a」,」bbb」)
[『bbb』]
---------------------
python re模組中怎麼去掉字串空格
14樓:相逢雙戀
三種方法如下:
用replace函式:
your_str.replace(' ', '')a = 'hello word' # 把a字串裡的word替換為python
a.replace('word','python') # 輸出的結果是hello python
用split斷開再合上:
''.join(your_str.split())用正規表示式來完成替換:
import re strinfo = re.***pile('word')
b = strinfo.sub('python',a)print b
# 結果:hello python
編寫一個函式,實現把一個字串中所有數字字元替換成「*」。在主函式中完成輸入與
15樓:噓
核心是判斷字元是否為數字,如果是就替換為「*」,即:if(s[i]>'0'&&s[i]<'9') 。
整個函式具體**如下:
#include
#include
void changes(char*s)
}int main()
擴充套件資料:判斷一個字元是否為數字的兩種方法:
1、直接判斷
#include
int main()
2、庫函式
int main()
16樓:強從心開始
#include
#include
void changes(char*s)
}int main()
我沒編譯過,不過應該是對的
python re模組如何判斷字串中包含某些特定字元?如檔名中不能包含'?','/'等字元,如何檢查?
17樓:gta小雞
^方法有很多,例如使用首尾位置標記^$+非法字符集[^]實現:
regex = r'^[^\\/:\*\?"<>\|]+$' #不能為空,不能含有\/:*?"<>|等字元
tests = ['abc_def',
'abc.def',
'abc/def',
'\?"',
'']matches = [i for i in tests if re.match(regex,i)]
print(matches)
還可以通過負向零寬斷言(?!)等方式實現。
python 2.7 re模組斜槓匹配問題
18樓:匿名使用者
看了半天,也沒明白為什麼要用正規表示式re模組,不都是替換插入原始字串嗎,直接用字串的find,replace,index等方法不就行了。
如果非要用re模組,將出問題的正規表示式用re.escape轉義成本來的意思
>>> s1='a\n"c:\\users\\12"\n\n'
>>> ps='a\n"c:\\users\\12"\n\n\n"c:\\users\\q"\n\n\n'
>>> s1 in ps
true
>>> ps=re.sub(re.escape(s1),'',ps)
python如何引用其他模組中類的方法中的變數
沒法實現。原因 你的tmp,只是class a中的一個函式fun內的臨時變數所以無法直接被外部呼叫。並且只有fun函式執行時才存在,函式結束時,就不存在了。關於變數的作用範圍,你可以參考 整理 python中變數的作用域 variable scope 想要可以被呼叫,可以試試 改為 a.py cla...
請教如何使用python的socket傳送二進位制資料
客戶端clt.py coding utf8 import socket host 192.168.1.101 port 12008 def send data data try sock clt socket.socket socket.af inet,socket.sock stream sock...
如何使用python解析超大ml
超大 xml 文件在哪呢?python解析xml檔案如何讀取所有標籤的內容?求大神指教 如何用python讀取xml檔案中指定標籤的文件內容並將其修改?最好寫下詳細 非常感謝哈!使用python自帶的elementtree模組,給你個例子你就知道了 xml文件 0e python python 修改...