Подсчитать слово написанное в текстовой области

Вдохновленный ответом Мэтта Грегори, здесь немного сложнее итератор, который вернет a, b, ..., z, aa, ab, ..., zz, aaa, aab, ..., zzy, zzz

    class AlphaCounter:
    def __init__(self, low, high):
        self.current = low
        self.high = high

    def __iter__(self):
        return self

    def __next__(self): # Python 3: def __next__(self)
        alpha = ' abcdefghijklmnopqrstuvwxyz'
        n_current = sum([(alpha.find(self.current[x])* 26**(len(self.current)-x-1)) for x in range(len(self.current))])
        n_high = sum([(alpha.find(self.high[x])* 26**(len(self.high)-x-1)) for x in range(len(self.high))])
        if n_current > n_high:
            raise StopIteration
        else:
            increment = True
            ret = ''
            for x in self.current[::-1]:
                if 'z' == x:
                    if increment:
                        ret += 'a'
                    else:
                        ret += 'z'
                else:
                    if increment:
                        ret += alpha[alpha.find(x)+1]
                        increment = False
                    else:
                        ret += x
            if increment:
                ret += 'a'
            tmp = self.current
            self.current = ret[::-1]
            return tmp

for c in AlphaCounter('a', 'zzz'):
    print(c)
0
задан TobiasM 30 March 2019 в 22:11
поделиться

1 ответ

Вам просто нужно поместить функцию в событие keyup вашего поля запроса.

$(function() {
  function numHits(n, h) {
    var c, re = new RegExp(n, "g");
    c = (h.match(re) || []).length;
    return c;
  }
  $("#keyword-input").keyup(function(e) {
    e.preventDefault();
    $("#keyword-count").html(numHits($("#keyword-input").val(), $("#my-txt-area").val()));
  });
});
0
ответ дан sc0rp1on 30 March 2019 в 22:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: