[英]Regex uppercase words with condition
我是regex的新手,我不知道該怎么做:
你好,我是侏羅紀世界閉嘴了
[評論]電影《蝙蝠俠》真棒哈哈
我需要的是電影的標題。 每個句子只有一個。 我必須忽略[]之間的單詞,因為它不是電影的標題。
我想到了這一點:
^\w([A-Z]{2,})+
任何幫助都將受到歡迎。
謝謝。
您可以使用負面環顧四周功能來確保標題不在[]
\b(?<!\[)[A-Z ]{2,}(?!\])\b
\\b
匹配單詞邊界。
(?<!\\[)
負向后面。 檢查匹配的字符串是否不以[
[AZ ]{2,}
匹配2個或更多大寫字母。
(?!\\])
負面的展望。 確保字符串后沒有]
例
>>> string = """Hello this is JURASSIC WORLD shut up Ok
... [REVIEW] The movie BATMAN is awesome lol"""
>>> re.findall(r'\b(?<!\[)[A-Z ]{2,}(?!\])\b', string)
[' JURASSIC WORLD ', ' BATMAN ']
>>>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.