回答
你並不需要一個正則表達式;只需使用str.split()
:
>>> 'test-class'.split('-')
['test', 'class']
一個正則表達式的解決方案仍然是分裂:
>>> import re
>>> re.split(r'-', 'test-class')
['test', 'class']
我特別需要一個正則表達式;) – user3264316
@ user3264316:爲什麼你特別需要一個正則表達式? –
@ user3264316:你*可悲*在這裏指定了問題,順便說一句。我只能假設你想用破折號分割輸入,而文本其餘部分包含的內容並不重要。 –
([a-zA-Z]*)
將足以捕獲字符串的每一個字。這裏
每一個字,和一些空字符串啓動。使用'+'代替'*' –
"(\w+)"g
例如:http://regex101.com/r/mV9cE2
\w
將匹配所有字母數字字符的返回組
g
修改:全球。
總之你定義一個你想要的東西相匹配的正則表達式:所有的比賽如果您在使用正則表達式的意圖(不要在第一場比賽返回)
。然後,您使用regex.matchall
來查找字符串,並找回匹配的部分。
import re
$ s = 'hello-world this 32'
$ results = re.findall(r'[a-zA-Z]*', s)
$ print(results)
['hello', '', 'world', '', 'this', '', '', '', '']
# Now we can filter out the empty results.
$ non_empty_results = [result for result in results if result]
$ print(non_empty_results)
['hello', 'world', 'this']
- 1. 正則表達式捕捉串,多行
- 2. 正則表達式.NET多行捕捉
- 3. 正則表達式 - 捕捉多次
- 4. 正則表達式不捕捉JMeter的
- 5. 的Javascript正則表達式捕捉
- 6. 捕捉與Postgres的正則表達式
- 7. 正則表達式捕捉重複組
- 8. 正則表達式組捕捉問題
- 9. 正則表達式捕捉這部分
- 10. 正則表達式只捕捉組
- 11. 動態正則表達式來捕捉
- 12. AWK捕捉正則表達式
- 13. 捕捉與正則表達式
- 14. 正則表達式 - 捕捉大括號
- 15. 正則表達式和捕捉括號
- 16. 正則表達式:如何捕捉一組使用正則表達式的可選捕獲組後?
- 17. 正則表達式捕捉儘可能多的Javascript重定向
- 18. 正則表達式的一組中捕捉多個數字
- 19. perl的 - 如何捕捉空單元格與正則表達式
- 20. 如何捕捉嵌套{如果...%} {%ENDIF%} statments用正則表達式
- 21. 正則表達式,捉多個標籤
- 22. 正則表達式來捕捉多行報價
- 23. C#正則表達式組多次捕捉
- 24. 如何使用正則表達式捕捉空字段?
- 25. 我的正則表達式仍然捕捉非捕獲組
- 26. 正則表達式捕獲美元數額捕捉@符號太
- 27. 的Javascript正則表達式 - 僅捕捉非轉義模式
- 28. Python的正則表達式捕捉模式後,第一個字
- 29. 正則表達式來捕捉這些模式的遞歸
- 30. 正則表達式正則表達式正則表達式使用正則表達式,但不是與Python
's.split(' - ')'...... – devnull
我同意,如果只有'-'分隔單詞,就不需要正則表達式。但是,如果在單詞之間也存在逗號,點或空格,則正則表達式會很有用。 – Theox
這裏的目標是什麼?在'-'上分割?要查找所有沒有短劃線的文字塊?當有數字,其他標點符號和換行符時會發生什麼?你需要給我們樣本輸入,期望的輸出,包括*例外*,如果有的話。 –