这是我的问题:
我正在尝试从NSString对象中过滤出html标记。
对此的大多数修复只是删除了一个<和>以及那些角色本身。我试图找出一种方法来删除“< ...>” substring ONLY如果它不包含空格或换行符。
我这样做的方式看起来像这样
while ([source rangeOfString@"someRegEx" options:NSRegularExpressionSearch].location != NSNotFound) {
//find the range of the substring
//check for newlines/whitespace characters
//replace occurrences of the string with "" if it doesn't have them
}
首先,这看起来是一个好方法吗?其次,我在弄清楚正则表达式会是什么样子时会遇到很多问题......有没有人有任何想法可能会是什么样子?
答案 0 :(得分:0)
这似乎是一种很好的方法,只要你正在寻找的标签真的永远不会包含空格,正如m.buettner指出的那样。正则表达式看起来像这样:
<[^\s]*?>
[^\s]
是一个否定的字符类,它匹配除空格字符之外的任何内容。 ?
使*
懒惰而不是贪婪。因此,这个英文正则表示“匹配a'&lt;',然后是最小可能的非空白字符数,然后是'&gt;'。”
答案 1 :(得分:0)
也许你应该考虑使用NSXMLParser
,描述here。
你可以获得相当丰富的delegate methods来从字符串中提取你喜欢的内容。