[英]Python Regex for hyphenated words
我正在尋找一個正則表達式來匹配 Python 中的連字符。
我設法得到的最接近的是:'\w+-\w+[-w+]*'
text = "one-hundered-and-three- some text foo-bar some--text"
hyphenated = re.findall(r'\w+-\w+[-\w+]*',text)
它返回列表['one-hundered-and-three-', 'foo-bar']
。
除了'three'
后面的連字符外,這幾乎是完美的。 如果后面跟着一個'word'
我只想要額外的連字符。 即,而不是'[-\w+]\*'
我需要類似'(-\w+)*'
東西,我認為它可以工作,但沒有(它返回['-three, '']
)。 即匹配|word
后跟連字符后跟word 后跟hyphen_word 零次或多次|。
嘗試這個:
re.findall(r'\w+(?:-\w+)+',text)
在這里,我們認為一個連字符的詞是:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.