我有這樣的文字:找出句子所需要的正則表達式的幫助
「馬克
無論句子
無論句子2
馬特
無論句子3
無論句子4
卡羅爾
無論句子5
無論句子6"
我希望能夠識別每個句子(然後列出每個句子的列表)。我怎樣才能以簡單的方式做到這一點?
馬克,馬特和卡羅爾是否被識別並隨後添加到列表中並不重要,因爲這些名稱總是相同,但句子可能不同。
我已經試過了一點,但我無法弄清楚如何處理空行...
任何幫助,將不勝感激,即使它只是一個指針來領導我在正確的方向..
我有這樣的文字:找出句子所需要的正則表達式的幫助
「馬克
無論句子
無論句子2
馬特
無論句子3
無論句子4
卡羅爾
無論句子5
無論句子6"
我希望能夠識別每個句子(然後列出每個句子的列表)。我怎樣才能以簡單的方式做到這一點?
馬克,馬特和卡羅爾是否被識別並隨後添加到列表中並不重要,因爲這些名稱總是相同,但句子可能不同。
我已經試過了一點,但我無法弄清楚如何處理空行...
任何幫助,將不勝感激,即使它只是一個指針來領導我在正確的方向..
謝謝,我會在需要時使用它。不知道我會走哪條路,但這可能會在以後得到方便。 – user3024863
在Python中,你不需要一個正則表達式。
只需使用splitlines:
>>> text = """Mark
Whatever sentence
Whatever sentence 2
Matt
Whatever sentence 3
Whatever sentence 4
Carol
Whatever sentence 5
Whatever sentence 6"""
>>> sentences = text.splitlines()
>>> sentences
['Mark', '', 'Whatever sentence', 'Whatever sentence 2', '', 'Matt', '', 'Whatever sentence 3', 'Whatever sentence 4', '', 'Carol', '', 'Whatever sentence 5', 'Whatever sentence 6']
然後filter掉所有空行:
>>> sentences = list(filter(None, sentences))
>>> sentences
['Mark', 'Whatever sentence', 'Whatever sentence 2', 'Matt', 'Whatever sentence 3', 'Whatever sentence 4', 'Carol', 'Whatever sentence 5', 'Whatever sentence 6']
如果「讓每個句子的名單」,你的意思是分裂的每個句子翻譯成的話,你可以這樣做:
>>> sentences = [sentence.split() for sentence in sentences]
>>> sentences
[['Mark'], ['Whatever', 'sentence'], ['Whatever', 'sentence', '2'], ['Matt'], ['Whatever', 'sentence', '3'], ['Whatever', 'sentence', '4'], ['Carol'], ['Whatever', 'sentence', '5'], ['Whatever', 'sentence', '6']]
我期待得到某種答案,但不是這麼快,絕對不是這個屁股! 謝謝你,我會試試看! – user3024863
答案我正要發佈!你應該精確的說,使用''list(filter(...))'',代碼是在Python 3中,不是嗎? – eyquem
@ user3024863然後你應該點擊在seeneyrod的答案左邊的'upvote button - points - downvote button'系列下的「支架」,接受它 – eyquem
你如何區分一個句子和一個名字?你能給出一個更具體的例子和你的預期輸出(匹配)嗎?你究竟試過了什麼? – slhck
@slhck OP沒有(我認爲)。 「馬克,馬特和卡羅爾是否被識別並不重要;) – elslooo