我在 C 中创建了一个程序,它将读取文件的内容,然后将其输出到一个新文件中。但是,我需要扩展这个程序以跳过 HTML 标记。有人可以指出我应该做什么或应该如何做的正确方向吗?
我所知道的只是分别跳过字符,但是我如何跳过它以包容性地跳过“<和>”中的所有内容?
如果可能,请不要给我完整的完整代码,因为这是作业,我想从中学习。
谢谢!
首先,您设置一个标志(调用它html_flag
)并将其设置为 0(false
)。您可以通过将其声明为int
. 当您遍历每个字符时,如果html_flag
是,则输出所有内容0
,直到您击中该<
字符。此时,您设置html_flag
为 1。如果标志为 1,则不输出任何扫描0
的字符。遇到字符时将标志转回>
,并继续对整个文件执行此操作。
在阅读文件时,您可以在找到“<”字符时设置一个标志,并在找到“>”时关闭该标志。
当此标志出现时,您只需忽略并读取下一个字符。
我能想到的唯一问题是如果您的 HTML 有这样的内容:
<a href="something with '>'">
在这种情况下,您将需要另一个“”标志。
有一个布尔标志,指示您是否需要保留符号。
伪代码:
tag = false
for(ch in text){
if(ch == "<")
tag = true
if not tag
print ch
if(ch == ">")
tag = false
}