// // NSString+NSString_CountryCode.m // Keywords_ad_Create // // Created by Liam Pro on 16-5-16. // Copyright (c) 2016年 Liam Pro. All rights reserved. // #import "NSString+NSString_CountryCode.h" @implementation NSString (NSString_CountryCode) +(NSMutableArray *)CountryInfoList{ NSMutableArray *arr = [[NSMutableArray alloc] init]; [arr addObject:@"AD,安道尔共和国,Andorra,376"]; [arr addObject:@"AE,阿拉伯联合酋长国,United Arab Emirates,971"]; [arr addObject:@"AF,阿富汗,Afghanistan,93"]; [arr addObject:@"AG,安提瓜和巴布达,Antigua and Barbuda,1268"]; [arr addObject:@"AI,安圭拉岛,Anguilla,1264"]; [arr addObject:@"AL,阿尔巴尼亚,Albania,355"]; [arr addObject:@"AM,亚美尼亚,Armenia,374"]; [arr addObject:@"AO,安哥拉,Angola,244"]; [arr addObject:@"AR,阿根廷,Argentina,54"]; [arr addObject:@"AT,奥地利,Austria,43"]; [arr addObject:@"AU,澳大利亚,Australia,61"]; [arr addObject:@"AZ,阿塞拜疆,Azerbaijan,994"]; [arr addObject:@"BB,巴巴多斯,Barbados,1246"]; [arr addObject:@"BD,孟加拉国,Bangladesh,880"]; [arr addObject:@"BE,比利时,Belgium,32"]; [arr addObject:@"BF,布基纳法索,Burkina-faso,226"]; [arr addObject:@"BG,保加利亚,Bulgaria,359"]; [arr addObject:@"BH,巴林,Bahrain,973"]; [arr addObject:@"BI,布隆迪,Burundi,257"]; [arr addObject:@"BJ,贝宁,Benin,229"]; [arr addObject:@"BL,巴勒斯坦,Palestine,970"]; [arr addObject:@"BM,百慕大群岛,Bermuda Is.,1441"]; [arr addObject:@"BN,文莱,Brunei,673"]; [arr addObject:@"BO,玻利维亚,Bolivia,591"]; [arr addObject:@"BR,巴西,Brazil,55"]; [arr addObject:@"BS,巴哈马,Bahamas,1242"]; [arr addObject:@"BW,博茨瓦纳,Botswana,267"]; [arr addObject:@"BY,白俄罗斯,Belarus,375"]; [arr addObject:@"BZ,伯利兹,Belize,501"]; [arr addObject:@"CA,加拿大,Canada,1"]; [arr addObject:@"CF,中非共和国,Central African Republic,236"]; [arr addObject:@"CG,刚果,Congo,242"]; [arr addObject:@"CH,瑞士,Switzerland,41"]; [arr addObject:@"CK,库克群岛,Cook Is.,682"]; [arr addObject:@"CL,智利,Chile,56"]; [arr addObject:@"CM,喀麦隆,Cameroon,237"]; [arr addObject:@"CN,中国,China,86"]; [arr addObject:@"CO,哥伦比亚,Colombia,57"]; [arr addObject:@"CR,哥斯达黎加,Costa Rica,506"]; [arr addObject:@"CU,古巴,Cuba,53"]; [arr addObject:@"CY,塞浦路斯,Cyprus,357"]; [arr addObject:@"CZ,捷克,Czech Republic,420"]; [arr addObject:@"DE,德国,Germany,49"]; [arr addObject:@"DJ,吉布提,Djibouti,253"]; [arr addObject:@"DK,丹麦,Denmark,45"]; [arr addObject:@"DO,多米尼加共和国,Dominica Rep.,1890"]; [arr addObject:@"DZ,阿尔及利亚,Algeria,213"]; [arr addObject:@"EC,厄瓜多尔,Ecuador,593"]; [arr addObject:@"EE,爱沙尼亚,Estonia,372"]; [arr addObject:@"EG,埃及,Egypt,20"]; [arr addObject:@"ES,西班牙,Spain,34"]; [arr addObject:@"ET,埃塞俄比亚,Ethiopia,251"]; [arr addObject:@"FI,芬兰,Finland,358"]; [arr addObject:@"FJ,斐济,Fiji,679"]; [arr addObject:@"FR,法国,France,33"]; [arr addObject:@"GA,加蓬,Gabon,241"]; [arr addObject:@"GB,英国,United Kiongdom,44"]; [arr addObject:@"GD,格林纳达,Grenada,1809"]; [arr addObject:@"GE,格鲁吉亚,Georgia,995"]; [arr addObject:@"GF,法属圭亚那,French Guiana,594"]; [arr addObject:@"GH,加纳,Ghana,233"]; [arr addObject:@"GI,直布罗陀,Gibraltar,350"]; [arr addObject:@"GM,冈比亚,Gambia,220"]; [arr addObject:@"GN,几内亚,Guinea,224"]; [arr addObject:@"GR,希腊,Greece,30"]; [arr addObject:@"GT,危地马拉,Guatemala,502"]; [arr addObject:@"GU,关岛,Guam,1671"]; [arr addObject:@"GY,圭亚那,Guyana,592"]; [arr addObject:@"HK,香港特别行政区,Hongkong,852"]; [arr addObject:@"HN,洪都拉斯,Honduras,504"]; [arr addObject:@"HT,海地,Haiti,509"]; [arr addObject:@"HU,匈牙利,Hungary,36"]; [arr addObject:@"ID,印度尼西亚,Indonesia,62"]; [arr addObject:@"IE,爱尔兰,Ireland,353"]; [arr addObject:@"IL,以色列,Israel,972"]; [arr addObject:@"IN,印度,India,91"]; [arr addObject:@"IQ,伊拉克,Iraq,964"]; [arr addObject:@"IR,伊朗,Iran,98"]; [arr addObject:@"IS,冰岛,Iceland,354"]; [arr addObject:@"IT,意大利,Italy,39"]; [arr addObject:@"JM,牙买加,Jamaica,1876"]; [arr addObject:@"JO,约旦,Jordan,962"]; [arr addObject:@"JP,日本,Japan,81"]; [arr addObject:@"KE,肯尼亚,Kenya,254"]; [arr addObject:@"KG,吉尔吉斯坦,Kyrgyzstan,331"]; [arr addObject:@"KH,柬埔寨,Kampuchea (Cambodia ),855"]; [arr addObject:@"KP,朝鲜,North Korea,850"]; [arr addObject:@"KR,韩国,Korea,82"]; [arr addObject:@"KT,科特迪瓦共和国,Republic of Ivory Coast,225"]; [arr addObject:@"KW,科威特,Kuwait,965"]; [arr addObject:@"KZ,哈萨克斯坦,Kazakstan327"]; [arr addObject:@"LA,老挝,Laos,856"]; [arr addObject:@"LB,黎巴嫩,Lebanon,961"]; [arr addObject:@"LC,圣卢西亚,St.Lucia,1758"]; [arr addObject:@"LI,列支敦士登,Liechtenstein,423"]; [arr addObject:@"LK,斯里兰卡,Sri Lanka,94"]; [arr addObject:@"LR,利比里亚,Liberia,231"]; [arr addObject:@"LS,莱索托,Lesotho,266"]; [arr addObject:@"LT,立陶宛,Lithuania,370"]; [arr addObject:@"LU,卢森堡,Luxembourg,352"]; [arr addObject:@"LV,拉脱维亚,Latvia,371"]; [arr addObject:@"LY,利比亚,Libya,218"]; [arr addObject:@"MA,摩洛哥,Morocco,212"]; [arr addObject:@"MC,摩纳哥,Monaco,377"]; [arr addObject:@"MD,摩尔多瓦,Moldova, Republic of,373"]; [arr addObject:@"MG,马达加斯加,Madagascar,261"]; [arr addObject:@"ML,马里,Mali,223"]; [arr addObject:@"MM,缅甸,Burma,95"]; [arr addObject:@"MN,蒙古,Mongolia,976"]; [arr addObject:@"MO,澳门,Macao,853"]; [arr addObject:@"MS,蒙特塞拉特岛,Montserrat Is,1664"]; [arr addObject:@"MT,马耳他,Malta,356"]; [arr addObject:@"MU,毛里求斯,Mauritius,230"]; [arr addObject:@"MV,马尔代夫,Maldives,960"]; [arr addObject:@"MW,马拉维,Malawi,265"]; [arr addObject:@"MX,墨西哥,Mexico,52"]; [arr addObject:@"MY,马来西亚,Malaysia,60"]; [arr addObject:@"MZ,莫桑比克,Mozambique,258"]; [arr addObject:@"NA,纳米比亚,Namibia,264"]; [arr addObject:@"NE,尼日尔,Niger,977"]; [arr addObject:@"NG,尼日利亚,Nigeria,234"]; [arr addObject:@"NI,尼加拉瓜,Nicaragua,505"]; [arr addObject:@"NL,荷兰,Netherlands,31"]; [arr addObject:@"NO,挪威,Norway,47"]; [arr addObject:@"NP,尼泊尔,Nepal,977"]; [arr addObject:@"NR,瑙鲁,Nauru,674"]; [arr addObject:@"NZ,新西兰,New Zealand,64"]; [arr addObject:@"OM,阿曼,Oman,968"]; [arr addObject:@"PA,巴拿马,Panama,507"]; [arr addObject:@"PE,秘鲁,Peru,51"]; [arr addObject:@"PF,法属玻利尼西亚,French Polynesia,689"]; [arr addObject:@"PG,巴布亚新几内亚,Papua New Cuinea,675"]; [arr addObject:@"PH,菲律宾,Philippines,63"]; [arr addObject:@"PK,巴基斯坦,Pakistan,92"]; [arr addObject:@"PL,波兰,Poland,48"]; [arr addObject:@"PR,波多黎各,Puerto Rico,1787"]; [arr addObject:@"PT,葡萄牙,Portugal,351"]; [arr addObject:@"PY,巴拉圭,Paraguay,595"]; [arr addObject:@"QA,卡塔尔,Qatar,974"]; [arr addObject:@"RO,罗马尼亚,Romania,40"]; [arr addObject:@"RU,俄罗斯,Russia,7"]; [arr addObject:@"SA,沙特阿拉伯,Saudi Arabia,966"]; [arr addObject:@"SB,所罗门群岛,Solomon Is,677"]; [arr addObject:@"SC,塞舌尔,Seychelles,248"]; [arr addObject:@"SD,苏丹,Sudan,249"]; [arr addObject:@"SE,瑞典,Sweden,46"]; [arr addObject:@"SG,新加坡,Singapore,65"]; [arr addObject:@"SI,斯洛文尼亚,Slovenia,386"]; [arr addObject:@"SK,斯洛伐克,Slovakia,421"]; [arr addObject:@"SL,塞拉利昂,Sierra Leone,232"]; [arr addObject:@"SM,圣马力诺,San Marino,378"]; [arr addObject:@"SN,塞内加尔,Senegal,221"]; [arr addObject:@"SO,索马里,Somali,252"]; [arr addObject:@"SR,苏里南,Suriname,597"]; [arr addObject:@"ST,圣多美和普林西比,Sao Tome and Principe,239"]; [arr addObject:@"SV,萨尔瓦多,EI Salvador,503"]; [arr addObject:@"SY,叙利亚,Syria,963"]; [arr addObject:@"SZ,斯威士兰,Swaziland,268"]; [arr addObject:@"TD,乍得,Chad,235"]; [arr addObject:@"TG,多哥,Togo,228"]; [arr addObject:@"TH,泰国,Thailand,66"]; [arr addObject:@"TJ,塔吉克斯坦,Tajikstan,992"]; [arr addObject:@"TM,土库曼斯坦,Turkmenistan,993"]; [arr addObject:@"TN,突尼斯,Tunisia,216"]; [arr addObject:@"TO,汤加,Tonga,676"]; [arr addObject:@"TR,土耳其,Turkey,90"]; [arr addObject:@"TT,特立尼达和多巴哥,Trinidad and Tobago,1809"]; [arr addObject:@"TW,台湾省,Taiwan,886"]; [arr addObject:@"TZ,坦桑尼亚,Tanzania,255"]; [arr addObject:@"UA,乌克兰,Ukraine,380"]; [arr addObject:@"UG,乌干达,Uganda,256"]; [arr addObject:@"US,美国,United States of America,1"]; [arr addObject:@"UY,乌拉圭,Uruguay,598"]; [arr addObject:@"UZ,乌兹别克斯坦,Uzbekistan,233"]; [arr addObject:@"VC,圣文森特岛,Saint Vincent,1784"]; [arr addObject:@"VE,委内瑞拉,Venezuela,58"]; [arr addObject:@"VN,越南,Vietnam,84"]; [arr addObject:@"YE,也门,Yemen,967"]; [arr addObject:@"YU,南斯拉夫,Yugoslavia,381"]; [arr addObject:@"ZA,南非,South Africa,27"]; [arr addObject:@"ZM,赞比亚,Zambia,260"]; [arr addObject:@"ZR,扎伊尔,Zaire,243"]; [arr addObject:@"ZW,津巴布韦,Zimbabwe,263"]; return arr; } -(BOOL)findString:(NSString *)asub{ if (asub==nil) { return NO; } NSRange range; range = [self rangeOfString:asub]; if (range.location != NSNotFound) { return YES; }else{ return NO; } } +(NSString *)getCountryName:(NSString *)aCode{ aCode = [aCode uppercaseStringWithLocale:[NSLocale currentLocale]]; NSMutableArray *countryList = [NSString CountryInfoList]; for (NSString *s in countryList) { NSArray *arry=[s componentsSeparatedByString:@","]; NSString *str = [arry objectAtIndex:0]; if ([str isEqualToString:aCode]) { return [arry objectAtIndex:1]; } } return @""; } +(NSString *)getCountryCode:(NSString *)aName{ NSMutableArray *countryList = [NSString CountryInfoList]; for (NSString *s in countryList) { NSArray *arry=[s componentsSeparatedByString:@","]; NSString *str = [arry objectAtIndex:1]; if ([str isEqualToString:aName]) { return [arry objectAtIndex:0]; } } for (NSString *s in countryList) { NSArray *arry=[s componentsSeparatedByString:@","]; NSString *str = [arry objectAtIndex:1]; if ([str findString:aName]) { return [arry objectAtIndex:0]; } } return @""; } -(float)GetPriceFromAdsName{ NSRange range = [self rangeOfString:@"@"]; if ([self findString:@"@"]) { NSString *substring = [[self substringFromIndex:NSMaxRange(range)] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]; if ([substring findString:@"@"]) { range = [substring rangeOfString:@"@"]; substring = [[substring substringToIndex:NSMaxRange(range)] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]; float res = [substring floatValue]; return res; } } return 0.0; } -(NSString *)GetPriceFromAdsNameString{ NSRange range = [self rangeOfString:@"@"]; if ([self findString:@"@"]) { NSString *substring = [[self substringFromIndex:NSMaxRange(range)] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]; if ([substring findString:@"@"]) { range = [substring rangeOfString:@"@"]; substring = [[substring substringToIndex:NSMaxRange(range)] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]; return [NSString stringWithFormat:@"@%@",substring]; } } return nil; } -(NSString *)GetAgeStrFromAdsNameString{ // A澳大利亚_FastestClean-Image21-CPM-0716_男_25~65_20160716_@1.26@ NSArray *array = [self componentsSeparatedByString:@"_"]; NSString *ageStr = @""; for (int i=0; i2) { return ageStr; } return nil; } -(NSString *)GetCountryStrFromAdsNameString{ // A澳大利亚_FastestClean-Image21-CPM-0716_男_25~65_20160716_@1.26@ NSArray *array = [self componentsSeparatedByString:@"_"]; NSString *countryStr = [array objectAtIndex:0]; if ([countryStr findString:@"A高端"]||[countryStr findString:@"A低端"]||[countryStr findString:@"所有"]||[countryStr findString:@"全世界"]) { return countryStr; } countryStr = [countryStr substringFromIndex:1]; NSString *countryCode = [NSString getCountryCode:countryStr]; if (countryCode.length>1) { return countryStr; } return nil; } +(NSDictionary *)getDicFromJson:(NSString *)JsonStr{ NSData *data = [JsonStr dataUsingEncoding:NSUTF8StringEncoding]; NSDictionary * json = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil]; return json; } +(NSArray *)getArrayFromJson:(NSString *)JsonStr{ NSData *data = [JsonStr dataUsingEncoding:NSUTF8StringEncoding]; NSArray * json = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil]; return json; } - (BOOL)isIntNumber{ NSScanner* scan = [NSScanner scannerWithString:self]; int val; return[scan scanInt:&val] && [scan isAtEnd]; } - (BOOL)isFloatNumber{ NSScanner* scan = [NSScanner scannerWithString:self]; float val; return[scan scanFloat:&val] && [scan isAtEnd]; } -(int)TimeDistance{ NSDateFormatter *date=[[NSDateFormatter alloc] init]; [date setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZZZ"]; NSDate *d=[date dateFromString:self]; NSInteger unitFlags = NSDayCalendarUnit| NSMonthCalendarUnit | NSYearCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit; NSCalendar *cal = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar]; NSDateComponents *comps = [cal components:unitFlags fromDate:d]; NSDate *newBegin = [cal dateFromComponents:comps]; // 当前时间 NSCalendar *cal2 = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar]; NSDateComponents *comps2 = [cal2 components:unitFlags fromDate:[NSDate date]]; NSDate *newEnd = [cal2 dateFromComponents:comps2]; NSTimeInterval interval = [newEnd timeIntervalSinceDate:newBegin]; NSInteger resultDays=((NSInteger)interval)/(60); return (int) resultDays; } - (int)convertToInt { int strlength = 0; char* p = (char*)[self cStringUsingEncoding:NSUnicodeStringEncoding]; for (int i=0 ; i<[self lengthOfBytesUsingEncoding:NSUnicodeStringEncoding] ;i++) { if (*p) { p++; strlength++; } else { p++; } } return strlength; } @end