python中refindall的問題

2021-05-28 19:44:21 字數 2297 閱讀 3026

1樓:匿名使用者

第一個問bai

題,答案是不能用成coords.group(1),re.findall返回du的是一個列表,zhi讀取列表需要用daocoords[0]這種方式專

第二個問題,你用正屬

則找出來的結果再用正則過濾一遍:

import re

print(re.sub(r'(.*), (.*), (.*), (.*)', r'\1, c\2, \3\4', str))

python正規表示式re.findall(r"\b\w+\b", s)中的r是什麼意思?

2樓:花臂華盛頓

在python的string前面加上『r』, 是為了告訴編譯器這個string是個raw string,不要轉意backslash '\' 。 例如,\n 在raw string中,是兩個字元,\和n, 而不會轉意為換行符。由於正規表示式和 \ 會有衝突,因此,當一個字串使用了正規表示式後,最好在前面加上'r'。

例:r"\n\n\n\n\n\n」

作用:宣告後面的字串是普通字串

特殊字串中含有:轉義字元 \n \t 什麼什麼的用途:一般用在 正規表示式、檔案絕對地址

1,正規表示式:

2、系統路徑

這樣就不用專門的去處理引號之中的特殊字元了

3樓:匿名使用者

python中字串前面加上 r 表示原生字串,

與大多數程式語言相同,正規表示式裡使用"\"作為轉義字元,這就可能造成反斜槓困擾。假如你需要匹配文字中的字元"\",那麼使用程式語言表示的正規表示式裡將需要4個反斜槓"\\\\":前兩個和後兩個分別用於在程式語言裡轉義成反斜槓,轉換成兩個反斜槓後再在正規表示式裡轉義成一個反斜槓。

python裡的原生字串很好地解決了這個問題,這個例子中的正規表示式可以使用r"\\"表示。同樣,匹配一個數字的"\\d"可以寫成r"\d"。有了原生字串,你再也不用擔心是不是漏寫了反斜槓,寫出來的表示式也更直觀。

4樓:匿名使用者

re是python裡的正規表示式模組。findall是其中一個方法,用來按照提供的正規表示式,去匹配文字中的所有符合條件的字串。返回結果是一個包含所有匹配的list。

[1] 就是列表中的[1]啊

5樓:匿名使用者

1,表示匹配的值第一個字串

6樓:鍾桑揚

延伸閱讀:python的 內建函式 和 subprocess 。此文是本系列的第三篇文章了,和之前一樣,內容出自官方文件,但是會有自己的理解,並非單純的翻譯。

所以,如果我理解有誤,歡迎指正,謝謝。

本模組提供了和perl裡的正規表示式類似的功能,不關是正規表示式本身還是被搜尋的字串,都可以是unicode字元,這點不用擔心,python會處理地和ascii字元一樣漂亮。

正規表示式使用反斜杆(\)來轉義特殊字元,使其可以匹配字元本身,而不是指定其他特殊的含義。這可能會和python字面意義上的字串轉義相沖突,這也許有些令人費解。比如,要匹配一個反斜杆本身,你也許要用'\\\\'來做為正規表示式的字串,因為正規表示式要是\\,而字串裡,每個反斜杆都要寫成\\。

你也可以在字串前加上 r 這個字首來避免部分疑惑,因為 r 開頭的python字串是 raw 字串,所以裡面的所有字元都不會被轉義,比如r'\n'這個字串就是一個反斜杆加上一字母n,而'\n'我們知道這是個換行符。因此,上面的'\\\\'你也可以寫成r'\\',這樣,應該就好理解很多了。可以看下面這段:

7樓:匿名使用者

subn後面的中括號表示返回結果的iterable(迭代器),第2項,是說匹配的次數。

這個字串被匹配之後,替換了11次,因為每一個字元都是符合\w的。就都替換為hi了,然後返回了一個元組: ("hihihihihihihihihihihi",11) , 故此[1]就是11.

python怎麼把re中的findall()找出來存在檔案裡

8樓:

個人觀點: 用分行儲存更方便進一步內處容理

with open('tmp_parsered.txt', 'wt') as handle:

handle.write( '\n'.join(r.findall(data1)) )

9樓:

data1 = ''.join(data1) ,這樣就ok了

10樓:匿名使用者

s2=''.join(s)

#然後再對s2用正則即可

python問題,python中的,問題?

反轉一個list,返回一個迭代器 iterator 如 range 10 0,1,2,3,4,5,6,7,8,9 reversed range 10 x for x in reversed range 10 9,8,7,6,5,4,3,2,1,0 還可以這樣完成反轉 range 10 1 9,8,7...

python中的小問題,python中的一個小問題

函式遞迴呼叫的終止條件是引數n為0的時候,那你要保證n是整型。階乘本來就是整數的運算。符點數是不精確的,不建議用 來判斷是否和某個值相等,也即是n 0是基本上不會成立的。python中一個小問題 第一行你寫的是tempstr,s打的小寫的。下面成了大寫的 關於python的一個小問題 20 pyth...

python轉義雙引號,python中如何輸出引號

為啥一定都用雙引號呢?gp.calculatefield management a,type 林地 外面是單引號,裡面可以直接使用雙引號,不必轉義 如果使用變數代替可以這樣 a 林地 b s a gp.calculatefield management a,type b 也可以這樣 a 林地 b a...