我想從文件中提取測試牀名稱。這是名字出現的地方,我怎麼能用Python做到這一點?在python模式匹配後grep一個字符串
Status: aaa (image='some_image_name' on testbed='test_bed_name' archiving)
我想分裂字符串走索引的,但此行可能無法在我的所有文件相同。可能會有一些小的變化。
我想從文件中提取測試牀名稱。這是名字出現的地方,我怎麼能用Python做到這一點?在python模式匹配後grep一個字符串
Status: aaa (image='some_image_name' on testbed='test_bed_name' archiving)
我想分裂字符串走索引的,但此行可能無法在我的所有文件相同。可能會有一些小的變化。
如果格式總是這樣,你可以簡單地切開自己的方式來對地方了:
>>> s.split('=')[-1].split(' ')[0][1:-1]
test_bed_name
或者,您可以使用正則表達式:
>>> re.findall(r"(?:.*?)testbed='(.*?)'(?:.*?)", s)
test_bed_name
以上是對正則表達式的一種蹩腳的方法,但你總是可以調整它來使其更加精確。
謝謝,但我得到了正則表達式的語法錯誤。我是新手。能否請你幫忙? – RowenaRavenclaw
你有沒有檢查過使用正確的''''檢查更新,那裏有一個小錯字 –
解決了這個問題,謝謝。 – RowenaRavenclaw
眺望。
>>> re.search("(?<=testbed=')([^']+)'", "Status: aaa (image='some_image_name' on testbed='test_bed_name' archiving)").groups()
('test_bed_name',)
Downvote:請證明你自己的努力到目前爲止;如果沒有代碼,我們無法確切知道你卡在哪裏或者你已經知道了多少。此外,對於單個樣本,很難概括 - 多個樣本行和/或我們不應包含的事例將顯着集中問題。 – tripleee