Соответствие тексту - PullRequest
0 голосов
/ 06 марта 2019
 import re
with open("anti-adblock-killer-filters.txt")as f:
contents=f.read()
pattern=re.compile(r"[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+##")

 matches=pattern.finditer(contents)

 count=sum(1 for match in matches)

print'There are total HTML Rule With Doamin =',count

pattern=re.compile(r'##')

matches=pattern.finditer(contents)

count3=sum(1 for match in matches)

result=count3-count

print'There are total HTML hiding rule without domain is  =',result

print'There are total HTML hiding rule with and without domain is  
=',result+count

pattern=re.compile(r'\W[||]')

matches=pattern.finditer(contents)

count2=sum(1 for match in matches)

print'There are total HTTP rule with Domain Anchor  =',count2

в этом коде символ "||" показать домен ачор Тег домена представлен как «домен =» Я должен сопоставить тег домена, который представлен как в файле "domain =", поэтому мой первый вопрос заключается в том, какой шаблон я должен использовать, чтобы сопоставить правило http с привязкой домена и тегом домена? 2-й вопрос: какие паттерны будут использоваться для сопоставления правила HTTP без привязки к домену и тега домена так же, как третий вопрос, который если я хочу сопоставить правило http только с тегом домена тогда какой будет картина?

Я использую Anoconda Python 3

Ваш ответ будет высоко оценен. спасибо.

1 Ответ

0 голосов
/ 09 марта 2019

Попробуйте:

CSS="CSS"
COMMENT="COMMENT"
EXCEPTION="EXCEPTION"
FILTER="FILTER"

def is_comment(line):
    return line[0]=="!"

def is_css_rule(line):
    return '##' in line

def is_exception_rule(line):
    return '@' in line

def is_filter_rule(line):
    return not is_comment(line) and not is_css_rule(line)

def get_rule_type(line):
    if is_comment(line):
        return COMMENT
    elif is_css_rule(line):
        return CSS
    elif is_exception_rule(line):
        return EXCEPTION
    else:
        return FILTER

with open("abc.txt") as f:
    for line in f:
        print('{:12s} {!r}'.format(get_rule_type(line), line))

Примечание: здесь используется Python 3. Кроме того, мы не используем регулярные выражения, поэтому нет необходимости включать пакет re.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...