时间转换,自适应文字高度,手机和邮箱验证

来源:互联网 发布:mp3编辑软件 编辑:程序博客网 时间:2024/04/30 08:06
+ (NSString *) dateStringFromNumberString:(NSString *)str{
    NSDate *date=[NSDate dateWithTimeIntervalSince1970:[str doubleValue]/1000];
    NSDateFormatter *fm=[[NSDateFormatter alloc]init];
    fm.dateFormat=@"yyyy-MM-dd HH:mm:ss";
    return [fm stringFromDate:date];
}

+ (double) getTimeStamepWithEndTime:(NSString *)finishtime {
    NSDateFormatter *fm=[[NSDateFormatter alloc]init];
    fm.dateFormat=@"yyyy-MM-dd HH:mm:ss";
    NSDate *finishDate = [Helper dateFromTimeStr:finishtime];
    NSTimeInterval time = [finishDate timeIntervalSinceDate:[NSDate date]];
    return time;
}

+ (NSDate *)dateFromTimeStr:(NSString *)timeStr{
    NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
    [formatter setLocale:[NSLocale currentLocale]];
    formatter.dateFormat = @"yyyy-MM-dd HH:mm:ss";
    NSDate *date = [formatter dateFromString:timeStr];
    return date;
}

+ (NSString *) dateStringFromString:(NSString *)str{
    NSDate *date=[NSDate dateWithTimeIntervalSince1970:[str doubleValue]/1000];
    NSDateFormatter *fm=[[NSDateFormatter alloc]init];
    fm.dateFormat=@"yyyy-MM-dd";
    return [fm stringFromDate:date];
}


+ (NSString *)fullDateStringFromNumberString:(NSString *)str{
    NSDate *date=[NSDate dateWithTimeIntervalSince1970:[str doubleValue]/1000];
    NSDateFormatter *fm=[[NSDateFormatter alloc]init];
    fm.dateFormat=@"yyyy-MM-dd HH:mm";
    return [fm stringFromDate:date];
}

+ (CGFloat) textHeightFromString:(NSString *)textStr width:(CGFloat)width fontsize:(CGFloat)Size{
    //最好判断一下SDK 的版本
    //下面的方法是ios7 的
    /**
     *  根据字符串的内容 和固定的宽度来求高度
     @param size 给一个预设的大小 宽度写成固定的 高度写成float 的最大值
     @param option 第二哥参数用于设置 是否以段为基准 不以base line 为准
     第三个参数对文字进行设置
     @return 真实的大小
     */
    float dev=[[[UIDevice currentDevice]systemVersion]floatValue];
    if (dev>=7.0) {
        NSDictionary *dict=@{
                             NSFontAttributeName: [UIFont systemFontOfSize:Size]
                             };
        
        CGRect frame=[textStr boundingRectWithSize:CGSizeMake(width, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading|NSStringDrawingTruncatesLastVisibleLine attributes:dict context:nil];
        return frame.size.height;
        
    }else{
        CGSize size=[textStr sizeWithFont:[UIFont systemFontOfSize:Size] constrainedToSize:CGSizeMake(width, CGFLOAT_MAX) lineBreakMode:NSLineBreakByCharWrapping];
        return size.height;
    }
    

}


//手机号码验证
+ (BOOL) validateMobile:(NSString *)mobile
{
    //手机号以13, 15,18开头,八个 \d 数字字符
    NSString *phoneRegex = @"^((13[0-9])|(15[^4,\\D])|(18[0,0-9])|(17[0,0-9]))\\d{8}$";
    NSPredicate *phoneTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",phoneRegex];
    
    return [phoneTest evaluateWithObject:mobile];
}

//邮箱验证
+ (BOOL) isValidateEmail:(NSString *)email {
    
    NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";
    
    NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];
    
    return [emailTest evaluateWithObject:email];
    
}

0 0
原创粉丝点击