跳到主要內容

Check String is Email or Url


Mail check :



-(BOOL) NSStringIsValidEmail:(NSString *)checkString

{
    BOOL stricterFilter = NO;
    NSString *stricterFilterString = @"^[A-Z0-9a-z\\._%+-]+@([A-Za-z0-9-]+\\.)+[A-Za-z]{2,4}$";
    NSString *laxString = @"^.+@([A-Za-z0-9-]+\\.)+[A-Za-z]{2}[A-Za-z]*$";
    NSString *emailRegex = stricterFilter ? stricterFilterString : laxString;
    NSPredicate *email = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];
    return [email evaluateWithObject:checkString];
}



Url check :

-(BOOL)isUrlString:(NSString *)checkStr

{
    NSCharacterSet *set = [NSCharacterSet URLQueryAllowedCharacterSet];

    /*
     for not en-us Character
     */

    NSString *urlStr = [checkStr stringByAddingPercentEncodingWithAllowedCharacters:set];

    NSURL *url = [NSURL URLWithString:urlStr]; //avoid get null

    if ((url && url.scheme && url.host) || (([[urlStr uppercaseString] hasPrefix:@"HTTP"] || [[urlStr uppercaseString] hasPrefix:@"HTTPS"]) && ![self NSStringIsValidEmail:urlStr]))

    {
        //string is url ...
        return YES;
    }
    return NO;
}

留言

這個網誌中的熱門文章

邪靈越界 -In The Dark Half- 沒有邪靈,不過分類越界了

中文片名 : 邪靈越界 英文片名 : In The Dark Half 上映日期 : 2012 觀影地點 : MOD 劇情簡介 : 瑪麗替鄰居鮑比看顧兒子尚恩時,尚恩竟離奇死亡。外界因鮑比的過去而認定是他殺了自己的兒子,但鮑比認為瑪麗才是害死尚恩的真凶。事情發生後,瑪麗的生活卻發生越來越多不可解釋的奇怪現象……

狂暴猛獅 - Prooi -

中文片名 : 狂暴猛獅 / 狂暴凶獅 原文片名 :  Prooi 上映日期 : 2016 劇情簡介 : 一家人在農場附近遭到殺害,阿姆斯特丹的警方找不到任何線索,獸醫麗茲卻發現了關鍵跡象,使她懷疑兇手是一隻大獅子。一開始,她的理論不被重視,但在更多受害者出現後,人們開始相信這隻猛獅已經入侵阿姆斯特丹了。政府請來英籍的大型動物獵人與麗茲合作。然而,在調查的同時,她還得確保自己身為記者的男友不會為了新聞失了分寸。而另一邊,大開殺戒的獅子已即將讓整個城市變成牠的狩獵場。

84那年夏天 -Summer of 84- 結局救了整部片

中文片名: 84 那年夏天 英文片名: Summer of 84 上映日期: 2018 觀影地點: iTunes 劇情簡介: 1984 年夏天,四個青少年懷疑附近的警察鄰居是近期連環殺人案的真兇,他們為了找到犯罪證據,花了一整個夏天的時間監視他。但隨著真相逐漸明朗,他們卻反而陷入更驚人的致命危機 …