文字列から HTML タグを削除する問題を解決しようとしています。正規表現の方が優れたソリューションであることは理解していますが、ここで何が問題なのかを突き止めたいと思います。
アイデアは、「タグ」を使用してタグ内にあることを監視し、各文字の値を比較することによってその値が変更されると仮定することです。
問題は、タグの値が決して変更されないことです:
def remove_tag(s):
tag = True
for c in s:
print "c = %s" % c
if (c == '<'):
print 'start_tag'
tag == True
print tag
elif (c == '>'):
print 'end tag'
tag == False
print tag
ランニング:
remove_tag("<h1>Title</h1>")
プロデュース:
c = <
start_tag
True
c = h
c = 1
c = >
end tag
True
c = T
c = i
c = t
c = l
c = e
c = <
start_tag
True
c = /
c = h
c = 1
c = >
end tag
True
None
「終了タグ」が出力されるのに、値「False」がタグに割り当てられない理由について困惑しています。