2012-02-23 40 views
0

我的问题是我怎么能得到一个电子邮件地址,如果我的UIWebView加载...如何从webview获取电子邮件地址?

首先我做了一个字符串关于查看和我能找到@我的字符串与此:

NSString *myText = [mWebView stringByEvaluatingJavaScriptFromString:@"document.documentElement.textContent"]; 
if ([myText rangeOfString:@"@"].location == NSNotFound) { 
    NSLog(@"Couldn't find mail address!"); 

} 

else { 
    NSLog(@"There is a valid mail address!"); 
} 

但我不知道如何将此内容(@)转换为var。

+0

因此,如果我输入电子邮件地址“[email protected]”,您需要哪些数据? – 2012-02-23 15:31:28

+0

我的webview在网页上有一个地址。我的问题是如何让它变成一个变量! – madG 2012-02-23 15:33:02

+0

目前,什么是'myText'打印出来呢? – 2012-02-23 15:33:53

回答

2

试试这个。

NSString *myText = [www stringByEvaluatingJavaScriptFromString:@"document.body.innerHTML;"]; 
NSString *expression = @"[A-Z0-9a-z._%+-][email protected][A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"; 
NSError *error = NULL; 

NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:expression options:NSRegularExpressionCaseInsensitive error:&error]; 

NSTextCheckingResult *match = [regex firstMatchInString:myText options:0 range:NSMakeRange(0, [myText length])]; 

if (match){ 
    NSString *email = [myText substringWithRange:match.range]; 
    NSLog(@"There is a valid mail address: %@", email); 
}else{ 
    NSLog(@"Couldn't find mail address!"); 
} 
+0

谢谢!太好了! – madG 2012-02-23 19:49:37

+0

但我得再问你一件事!我在它的底部有一个WebView和一个按钮来启动邮件编辑器。我将'匹配'粘贴到我的邮件发件人代码中,并粘贴到'setRecipients'部分。我想发一封邮件到我的WebView上的邮件地址。所以,如果我按下按钮,它将使用WebView中的地址启动我的邮件编辑器。问题是当我没有WV上的邮件地址时,邮件编辑器以空白收件人字段开始。但如果我有一个地址在西弗吉尼亚州,它退出了一个例外......不知道为什么............... – madG 2012-02-23 19:59:36

+0

所以我不知道如何将它作为邮件作曲者插入!请帮忙! – madG 2012-02-23 22:07:05

相关问题