Wpis z mikrobloga

#naukaprogramowania #python

wreszcie sam coś zrobiłem :) program ma robić akronim ze słów, czyli skrót z pierwszych liter.

import re

def abbreviate(words):

,,,,filtered = re.findall(r'[A-Z]+\'?[A-Z]?', words.upper())
,,,,acronym = ''.join([chr[0] for chr in filtered])
,,,,return acronym
  • 24
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@ponuryrolnik: Regexy są powolne, lepiej zrobić wiele operacji na stringu niż puścić jednego regexa.
Ok, czyli kwestia przypadku wchodzi w grę, chyba że są jakieś zasady, które słowa wchodzą w skład, a które nie.
Aby przejść ten test, wystarczy usunąć if z mojego przykładu. Dawno w projekcie nie korzystałem z regexa, zawsze lepszym rozwiązaniem okazywało się kilka prostych operacji na stringu :)
  • Odpowiedz