MyStringManager.m 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. //
  2. // MyStringManager.m
  3. // XMEye
  4. //
  5. // Created by Megatron on 3/26/15.
  6. // Copyright (c) 2015 Megatron. All rights reserved.
  7. //
  8. #import "MyStringManager.h"
  9. @implementation MyStringManager
  10. +(enum STR_TYPE)getStrType:(NSString *)str
  11. {
  12. enum STR_TYPE myType;
  13. if (str.length < 3) {
  14. return STR_TYPE_UNKNOW;
  15. }
  16. // 先判断是否为IP
  17. NSString *regexIP = @"((2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){3}(2[0-4]\\d|25[0-5]|[01]?\\d\\d?)";
  18. NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",regexIP];
  19. BOOL ifIP = [pred evaluateWithObject:str];
  20. if (ifIP == YES) {
  21. myType = STR_TYPE_IP;
  22. return myType;
  23. }
  24. else
  25. {
  26. // 判断是否为序列号
  27. NSString *regexSN = @"[a-f0-9]{16}";
  28. pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",regexSN];
  29. BOOL ifSN = [pred evaluateWithObject:str];
  30. if (ifSN == YES) {
  31. myType = STR_TYPE_SN;
  32. return myType;
  33. }
  34. else
  35. {
  36. // 判断是否为域名
  37. NSString *tC1 = [str substringWithRange:NSMakeRange(0, 1)];
  38. NSString *tC2 = [str substringWithRange:NSMakeRange(str.length - 1, 1)];
  39. NSRange range = [str rangeOfString:@"."];
  40. if (range.length > 0 && ![tC1 isEqualToString:@"."] && ![tC2 isEqualToString:@"."]) {
  41. myType = STR_TYPE_DN;
  42. return myType;
  43. }
  44. else
  45. {
  46. myType = STR_TYPE_UNKNOW;
  47. return myType;
  48. }
  49. }
  50. }
  51. }
  52. +(NSString *)getDevSNFromDevIP:(NSString*)devIP{
  53. NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];
  54. NSString *ret = [userDefault stringForKey:[NSString stringWithFormat:@"IP_DEV_%@", devIP]];
  55. if (ret == nil) {
  56. ret = devIP;
  57. }
  58. return ret;
  59. }
  60. +(NSString *)getDevIPFromDevSN:(NSString*)devSN{
  61. NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];
  62. NSString *ret = [userDefault stringForKey:[NSString stringWithFormat:@"DEV_IP_%@", devSN]];
  63. if (ret == nil) {
  64. ret = devSN;
  65. }
  66. return ret;
  67. }
  68. +(void)updateDevIP_DevSN:(NSString*)devIP devSN:(NSString*)devSN{
  69. NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];
  70. [userDefault setObject:devSN forKey:[NSString stringWithFormat:@"IP_DEV_%@", devIP]];
  71. [userDefault setObject:devIP forKey:[NSString stringWithFormat:@"DEV_IP_%@", devSN]];
  72. [[NSUserDefaults standardUserDefaults] synchronize];
  73. }
  74. @end