字符串、手机号正则校验和图片64

2021-06-14  本文已影响0人  光光6

//手机号正则校验

+ (BOOL)isMobileNumber:(NSString*)mobileNum{

    NSString *str = @"(0\\d{3,5}(-)?\\d{7,8})|(1\\d{10})|((400|800)\\d{7})";

    NSPredicate*regextestmobile = [NSPredicatepredicateWithFormat:@"SELF MATCHES %@", str];

    if([regextestmobileevaluateWithObject:mobileNum] ==YES){

        returnYES;

    }else{

        returnNO;

    }

}

第二、将图片转化base64

//将图片转表示base64值的字符串

funcimageToBase64(image:UIImage) ->String{

    //将获取的图片通过jpegData(compressionQuality: 1.0)方法转成Data类型的数据。

    //参数1.0表示不压缩,因为jpeg是有损格式,jpg和jpeg都用这个方法。无损格式PNG使用pngData()方法转换,没有参数,也就是不压缩。

    letimageData:Data? = image.jpegData(compressionQuality:1.0)

    let str: String = imageData!.base64EncodedString(options: Data.Base64EncodingOptions.lineLength64Characters)

    //返回

    returnstr

}

第三、 字段的校验规则

enum StringFormat {

    casenumber    //纯数字

    casefloat      // 浮点数字

    case character  // 纯字母

    casephone      // 是否电话号码

    caseemail      // 是否邮箱

    case numberAndCharacter //字母和数字

}

 }

    funcisFormat(of type:StringFormat) ->Bool{

        ifisEmpty{

            returnfalse

        }

        letregex:String

        switchtype {

        case.number: regex ="^[0-9]*$"

        case.float: regex ="^[0-9]+(.[0-9]+)?$"

        case.character: regex ="^[a-zA-Z]*$"

        case.phone: regex ="^0\\d{8,9}$"

        case .email: regex = "\\b([a-zA-Z0-9%_.+\\-]+)@([a-zA-Z0-9.\\-]+?\\.[a-zA-Z]{2,6})\\b"

        case.numberAndCharacter: regex ="^[A-Za-z0-9]*$"

        }

        returnmatches(pattern: regex)

    }

上一篇下一篇

猜你喜欢

热点阅读