import re


lst = ['MEASUREMENT   K02313  New York',
       'MEASUREMENT   K02338  London [BC:2.7.7.7]',
       'MEASUREMENT   K14761  Kairo [BC:1.2.-.-]',
       'MEASUREMENT   K03629  Berlin',
       'MEASUREMENT   K02470  Paris [BC:5.6.2.-]',
       'MEASUREMENT   K02469  Madrid [BC:5.43.2.2]'
       ]
pattern = r"\bBC:(?:[0-9-]|[1-9][0-9]|[1-9][0-9][0-9])(?:\.(?:[0-9-]|[1-9][0-9]|[1-9][0-9][0-9])){3}"

print ([m.group() for s in lst for m in [re.search(pattern, s)] if m])