0

这是我只需要从中获取“user@website.com”的 HTML。

<td valign="top">                                                       

<script type="text/javascript">
/* <![CDATA[ */
    PrintMail('user','website.com','user<at>website.com', '  '); 
/* ]]> */
</script><a href="JavaScript:SendMail('user','website.com');" onmouseover="self.status='user@website.com'; return true;" onmouseout="self.status=''; return true;">user@website.com</a><br>

这是我的代码:

NSArray *emailNodes = [bodyNode findChildTags:@"td"];


    for (HTMLNode *inputNode in emailNodes) {
        if ([inputNode findChildrenWithAttribute:@"valign" matchingName:@"top" allowPartial:NO]) {

                NSLog(@"%@", [[inputNode getAttributeNamed:@"href"] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]);

我使用的 HTML 解析器可以在这里找到:https ://github.com/zootreeves/Objective-C-HMTL-Parser

我通过使用第一个孩子、下一个兄弟姐妹等修改了我的代码一百万次,但什么都没有......

谢谢你的帮助。

4

1 回答 1

0

您可以使用 Regex 为 exp 提取电子邮件:

NSString *regex = @"[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})";
for (NSString *match in [html componentsSeperatedByRegex: regex]{
    NSLog (@"%@", match); 
}
于 2012-06-20T08:16:48.120 回答