正则表达式删除HTML-head-tag

3 regex iphone cocoa cocoa-touch ios

如何使用NSRegularExpression删除HTML文件中的整个head-tag.有人可以给我一个正则表达式吗?

在此先感谢,Ph99Ph

Reg*_*ent 12

空无一人!HTML是一种type-2语言,因此无法使用正则表达式(type-3)进行解析.

如有疑问,请参阅此维基文章.

很多人使用正则表达式来解析/编辑HTML.这在简单的情况下非常有效,但完全容易出错.

这就是说:你应该用这个正则表达式得到相当可靠的结果:

<head>.+?</head>
Run Code Online (Sandbox Code Playgroud)

这需要"." 也匹配换行符.如果没有,那么使用:

<head>(?:.|\n|\r)+?</head>
Run Code Online (Sandbox Code Playgroud)

再说一遍:这很容易出错,不要这样做.

什么,你应该使用是一个XML解析器NSXMLParser.

  • 公平地说,这是一种常见的误解,特别是通过使用正则表达式解析/验证/编辑html的不明智的在线文章的浪费.我只能全心全意地推荐在我的回答中阅读我喜欢的维基文章.理解语言复杂性是一件大事.基本上无处不在的计算机科学/编程.非常值得一读. (2认同)