2

大文字で始まる2つ以上の連続した単語を置き換えて、それらの略語に置き換えたい, で単語を見つけることができた

def find(name):
        return re.findall('([A-Z][a-z]+(?=\s[A-Z])(?:\s[A-Z][a-z]+)+)', name)

しかし、言葉を置き換えようとすると、うまくできませんでした

ここで私が得たもの

import re


def main():
    name = raw_input(" Enter name: ")

    print find(name)


def find(name):
    return re.sub(r'([A-Z][a-z]+(?=\s[A-Z])(?:\s[A-Z][a-z]+)+)', replacement, name)


def replacement(match):
    return match.group[0].upper()

main()

例えば

入力: 年次総会に行きました。出力: AGM に行きました。

どんな助けにも感謝します

4

2 に答える 2