import re
with open("domains.txt") as file:
text = file.read()
main_domain = "happy.com"
subdomains = re.findall(r"^(.+)\.%s$" % re.escape(main_domain), text, re.M)
main_domain = 'happy.com'
for line in open('domains.txt','r')):
matchobj = re.match(r'^(.*\.)*%s$' % main_domain, line.strip())
# do something with matchobj
为了避免灾难性的回溯,可以简化正则表达式:
如果您还想匹配主域:^{} 。在
(.*\.)*
很可能导致可怕的回溯。如果文件每行包含一个域,最简单的修复方法是在每行上执行regex,而不是同时执行整个文件:如果您的文件中除了域以外没有其他内容,您甚至可以简化这些内容,而不使用正则表达式:
^{pr2}$相关问题 更多 >
编程相关推荐