[英]Regex python find uppercase names
我有一個類型的文本文件:
[...演講...]
NAME_OF_SPEAKER_1:[……演講……]
NAME_OF_SPEAKER_2:[……演講……]
我的目的是隔離不同演講者的演講。 因為每個發言者的名字總是用大寫字母(名字+姓氏)表示,所以它們被清楚地識別出來。 然而,在演講中可以有大寫字母的名詞(不是人名),但實際上只有一個詞長到足以讓我發出問題(它有四個字母,說它是'ABCD')。 我正在考慮用類似的東西來識別每個演講者名字的 position(我假設每個名字至少有 3 個字母)
re.search('[A-Z^(ABCD)]{3,}',text_to_search)
為了排除那個特定的(恆定的)單詞'ABCD'。 但是,該命令會識別該詞而不是排除它。 關於如何克服這個問題的任何想法?
方括號[]
僅匹配單個字符。 方括號內的圓括號()
也僅匹配單個字符。 這意味着:
[ABCD]
和[(ABCD)]
與[AD]
相同。
[^(ABCD)]
匹配任何不屬於 AD 的字符
我會嘗試一些不同的東西:
^[AZ]*?:
匹配以大寫字母書寫的每個單詞,從行首開始,后跟一個冒號
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.