python提取指定字元
⑴ python批量提取txt文件中的特定字元後的數字
2、待讀取文件
是以":"作為分隔符的數據,每一行以回車結束。此文件為XXX.train
3、讀取每一句中的漢字
1234567891011...file_train = os.path.join(rootDir,"data/train/rg_train_"+modle_date+"_"+aiscene+".train")with open(file_train, 'r')as fp:textlist = fp.readlines()for text in textlist:if ":" in text:L4ID = text.split(":")[-2]Msg = text.split(":")[-1]if query_start == Msg.strip(" "):print("Msg is in train:",Msg)...
代碼中先獲取文件,然後讀取每一行,然後以":"作為分隔符。(-1代表倒數第一個,-2代表倒數第二個)
不管是txt文件還是xml文件還是其他的,都可以用這種方法來批量替換文件中字元串:
1234567891011121314151617# -*- coding:utf-8 -*-__author__ = 'ShawDa'import globxmls = glob.glob('xml_files/*.xml')for one_xml in xmls:print(one_xml)f = open(one_xml, 'r+', encoding='utf-8')all_the_lines = f.readlines()f.seek(0)f.truncate()for line in all_the_lines:line = line.replace('dog', 'pig')line = line.replace('cat', 'bike')f.write(line)f.close()
⑵ python 獲取文本里指定字元
在Python編程語言中,我們可以使用正則表達式來處理文本文件中的字元。假設我們想要從一個名為"test"的文件中提取所有的大寫字母,可以採用以下步驟來實現這一目標。
首先,我們需要打開這個文件,讀取其內容。這可以通過Python內置的文件操作函數來完成。代碼如下:
file = open('test', 'r')
接著,我們需要讀取文件中的所有內容。這可以通過調用文件對象的read方法來實現。
text = file.read()
讀取完成後,我們需要使用正則表達式找出所有的大寫字母。這里使用findall函數來查找符合特定模式的所有子串,模式是'[A-Z]',它匹配任何大寫字母。
list = re.findall(r'[A-Z]', text)
最後,我們需要將這個列表轉換為一個字元串。這可以通過join方法來實現,將列表中的所有元素連接起來,並使用空字元串作為分隔符。
result = ''.join(list)
將結果存儲在變數result中,然後輸出這個結果。
print result
通過以上步驟,我們就可以從一個文本文件中提取出所有的大寫字母,並將它們連接成一個字元串輸出。這種方法在處理文本數據時非常有用,特別是在需要分析或提取特定類型的信息時。
在實際應用中,這個方法可以應用於各種場景,例如從日誌文件中提取錯誤信息、從網頁中提取關鍵詞等。通過調整正則表達式模式,我們可以輕松地匹配和提取不同類型的字元。
需要注意的是,這種方法假設文件是以文本格式存儲的,並且所有的大寫字母都是我們想要提取的目標。如果文件是二進制格式,或者包含非ASCII字元,可能需要進行額外的處理。
總之,利用Python的正則表達式功能,我們可以方便地從文本文件中提取特定類型的字元,這對於文本處理和數據分析非常有幫助。
⑶ python 新手請教,用python取字元串中最後的一個特定字元之前的字元串,謝謝了
在Python中,處理字元串時,經常需要提取特定部分的字元串。比如,你有一個路徑字元串:
s = "C:/Python27/1/3.py"
你想要獲取路徑中最後一個斜杠"/"之前的部分,可以使用字元串的方法rfind()來找到最後一個斜杠的位置,然後使用切片操作來獲取所需的字元串。具體步驟如下:
1. 使用rfind()方法找到最後一個斜杠的位置:
pos = s.rfind("/")
2. 使用切片操作s[:pos]獲取從字元串開始到斜杠之前的部分:
s[:pos] # "C:/Python27/1"
這個方法適用於任何包含多個斜杠的路徑字元串,能夠准確地獲取最後一個斜杠之前的路徑部分。
如果你有其他字元串處理的需求,也可以使用類似的方法。比如,你想要從一個包含多個"/"的字元串中提取特定部分,可以先找到目標字元的位置,然後進行切片操作。
希望這個例子對你有所幫助!如果你在處理字元串時遇到其他問題,歡迎繼續提問。