从NSString中过滤掉子串。 。 .maybe使用正则表达式

时间:2012-11-28 23:13:43

标签: objective-c ios regex nsstring

这是我的问题:

我正在尝试从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

}

首先,这看起来是一个好方法吗?其次,我在弄清楚正则表达式会是什么样子时会遇到很多问题......有没有人有任何想法可能会是什么样子?

2 个答案:

答案 0 :(得分:0)

这似乎是一种很好的方法,只要你正在寻找的标签真的永远不会包含空格,正如m.buettner指出的那样。正则表达式看起来像这样:

<[^\s]*?>

[^\s]是一个否定的字符类,它匹配除空格字符之外的任何内容。 ?使*懒惰而不是贪婪。因此,这个英文正则表示“匹配a'&lt;',然后是最小可能的非空白字符数,然后是'&gt;'。”

This is a helpful page

答案 1 :(得分:0)

也许你应该考虑使用NSXMLParser,描述here

你可以获得相当丰富的delegate methods来从字符串中提取你喜欢的内容。