雖然這是一個類的項目分配,但我正試圖瞭解如何執行項目的特定部分。如何在htmlChecker中清除異常
我需要通過一個html文件,並檢查是否所有的開放語句都與閉幕語句匹配。此外,它們必須按照正確的順序排列,並且必須使用我已經實現的堆棧進行檢查。截至目前,我正在從文件中提取每個標籤。艱難的部分似乎是我在這裏工作的兩個例外。
和。我需要刪除這些標籤,以便程序不會將它們作爲開頭或結尾語句讀取。
class Stack(object):
def __init__(self):
self.items = []
def isEmpty(self):
return self.items = []
def push(self, item):
self.items.append(item)
def pop(self):
return self.items[-1]
def getTag(file):
EXCEPTIONS = ['br/', 'meta']
s = Stack()
balanced = True
i = 0
isCopying = False
currentTag = ''
isClosing = False
while i < len(file) and balanced:
if symbol == "<":
if i < (len(file) - 1) and file[i + 1] == "/":
i = i + 1
isClosing == True
isCopying == True
if symbol == ">":
if isClosing == True:
top = s.pop()
if not matches(top, symbol):
balanced = False
else:
**strong text**
s.push(currentTag)
currentTag = ''
isCopying == False
if isCopying == True:
currentTag += symbol
的代碼讀取該文件中,並通過信函信去搜索<string>
。如果存在,則將其推入堆棧。 matches
函數檢查結束語句是否等於開頭語句。例外列表是我必須檢查的那些將會把串放置在堆棧上的東西。我正在嘗試將它們合併到我的代碼中,這很困難。有任何想法嗎?在我推入堆棧之前,我應該通過一個過濾器系統來查看該語句是否有效或無效。基本的if語句應該足夠了。
啊我從來沒有聽說過令牌化。這是有道理的,如果我試圖針對文件中的某些字符串個案。 –
你*正在試圖針對某些字符串的情況。 –
對不起,我說錯了。我會試試! –