//
//  NSString+Regex.m
//  Minfo
//
//  Created by Nguyen Hieu on 1/4/13.
//  Copyright (c) 2013 Nguyen Hieu. All rights reserved.
//

#import "NSString+Regex.h"

@implementation NSString (Regex)

//-(typeScan )QRcodeType
//{
//    
//    
//    if([[Utility GetCampaignNOWithCameraScan:self] stringByMatching:@"^(\\{){0,1}[0-9a-fA-F]{8}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{12}(\\}){0,1}$"])
//    {
//        if([[self componentsSeparatedByString:@":"] count]<3)
//        {
//            return gzCampaignQR;
//        }
//        else{
//            int type = [[[self componentsSeparatedByString:@":"] lastObject] integerValue];
//            switch (type) {
//                case 1:
//                    return gzCampaignQrEmail;
//                    break;
//                case 2:
//                    return gzCampaignQrNewsprint;
//                    break;
//                case 3:
//                    return gzCampaignQRNEWSMagazines;
//                    break;
//                case 4:
//                    return gzCampaignQRNEWSBillboards;
//                    break;
//                case 5:
//                    return gzCampaignQRNEWSFixed_Posters;
//                    break;
//                case 6:
//                    return gzCampaignQRNEWSMoving_Posters;
//                    break;
//                case 7:
//                    return gzCampaignQRNEWSPoint_Of_Sale;
//                    break;
//                case 8:
//                    return gzCampaignQRNEWSBrouchures;
//                    break;
//                case 9:
//                    return gzCampaignQRNEWSFlyers;
//                    break;
//                case 10:
//                    return gzCampaignQRNEWSFacebook_link;
//                    break;
//                case 11:
//                    return gzCampaignQRNEWSBusiness_cards;
//                    break;
//                case 12:
//                    return gzCampaignQRNEWSLabling;
//                    break;
//                case 13:
//                    return gzCampaignQRNEWSWearable;
//                    break;
//                case 14:
//                    return gzCampaignQRNEWSBumperStickers;
//                    break;
//                case 15:
//                    return gzCampaignQRNEWSClearSticker;
//                    break;
//                default:
//                    return gzCampaignQR;
//                    break;
//            }
//        }
//    }
//    else if ([self stringByMatching:@"^BEGIN:(VEVENT|VCALENDAR){1}[\\s\\S]*END:(VEVENT|VCALENDAR)$"])
//    {
//        return gzCalendar;
//    }
//    else if([self stringByMatching:@"^(BEGIN:VCARD){1}[\\s\\S]*END:VCARD$"]||[self stringByMatching:@"^MECARD[\\s\\S]*$"])
//    {
//        return gzvCard;
//    }
//    else if ([self stringByMatching:@"^MATMSG[\\s\\S]*$"]||[self stringByMatching:@"^MAILTO:([\\w-\\.]+)@((?:[\\w]+\\.)+)([a-zA-Z]{2,4})$"])
//    {
//        return gzEmail;
//    }
//    else if([self stringByMatching:@"^SMSTO:[\\s\\S]*$"]){
//        return gzSMS;
//    }
//    else if([self stringByMatching:@"^TEL:[\\d]*$"])
//    {
//        return gzTelephone;
//    }
//    else if([self stringByMatching:@"^(HTTP://|HTTPS://)+(WWW.)?[\\S]*$"])
//    {
//        if([self stringByMatching:@"^(HTTP://|HTTPS://)+(WWW.)?ITUNES.APPLE.[\\S]*ALBUM[\\S]*$"])
//        {
//            return gzMusic;
//        }
//        else if([self stringByMatching:@"^(HTTP://|HTTPS://)+(WWW.)?ITUNES.APPLE.[\\S]*APP[\\S]*$"])
//        {
//            return gzApps;
//        }
//        else if([self stringByMatching:@"^(HTTP://|HTTPS://)+(WWW.)?(TWITTER.|FACEBOOK.|LINKEDIN.){1}[\\S]*$"])
//        {
//            return gzSocial;
//        }
//        else if([self stringByMatching:@"^(HTTP://|HTTPS://)+(WWW.)?(M.YOUTUBE|YOUTUBE){1}[\\S]*(WATCH){1}[\\S]*$"])
//        {
//            return gzVideo;
//        }
//        else{
//            return gzUrl;
//        }
//    }
//    else if([self stringByMatching:@"^WIFI:[\\S]*"])
//    {
//        return gzWifi;
//    }
//    else if([self stringByMatching:@"[\\d]+"]){
//        return gzText;
//    }
//    else {
//        return gzText;
//    }
//    
//}
//
-(BOOL)IsHexColor{
    NSString *emailRegex = @"^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$";
    NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];
    return [emailTest evaluateWithObject:self];
    
}
@end
