文档章节

有关NSString的一些类扩展方法

默默沫沫shine
 默默沫沫shine
发布于 2016/05/23 13:24
字数 211
阅读 5
收藏 0

//

//  NSString+MD5_LQ.m

//  BiJiaApp

//

//  Created by 华育 on 16/5/11.

//  Copyright © 2016年 华育. All rights reserved.

//

 

#import "NSString+MD5_LQ.h"

 

@implementation NSString (MD5_LQ)

 

+(NSString *)MD5_input:(NSString *)input

{

    const char *str = [input UTF8String];

    unsigned char result[CC_MD5_DIGEST_LENGTH];

    CC_MD5(str, (int)strlen(str), result);

    NSMutableString *ret = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH*2];//

    

    for(int i = 0; i<CC_MD5_DIGEST_LENGTH; i++) {

        [ret appendFormat:@"%02x",result[i]];

    }

    return ret;

}

 

+(BOOL )isTrueEmail:(NSString *)input

{

    NSString *email = @"^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\.\\w+([-.]\\w+)*$";

    NSPredicate *emailPre = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",email];

    return [emailPre evaluateWithObject:input];

}

 

//身份证号

+(BOOL)isTrueIdentity_Num:(NSString *)input

{

    NSString *Identity_Num = @"^[1-9][0-9]{5}(19[0-9]{2}|200[0-9]|2010)(0[1-9]|1[0-2])(0[1-9]|[12][0-9]|3[01])[0-9]{3}[0-9xX]$";

    

    NSPredicate *Identity_NumPre = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",Identity_Num];

    

    return [Identity_NumPre evaluateWithObject:input];

}

 

//合法密码

+(BOOL)isTruePassWord:(NSString *)input

{

    NSString *PassWord = @"^[a-zA-Z][a-zA-Z0-9_]{4,15}$";

    

    NSPredicate *PassWordPre = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",PassWord];

    

    return [PassWordPre evaluateWithObject:input];

}

 

//汉字

+(BOOL)isTrueChinese_character:(NSString *)input

{

    NSString *Chinese_character = @"^[\u4e00-\u9fa5]{0,}$";

    

    NSPredicate *Chinese_characterPre = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",Chinese_character];

    

    return [Chinese_characterPre evaluateWithObject:input];

}

 

 

 

@end

 

© 著作权归作者所有

共有 人打赏支持
默默沫沫shine
粉丝 0
博文 15
码字总数 4174
作品 0
朝阳
程序员
编写 Objective-C 代码/掌握基本的编程技能 之 读后笔记

类和接口(任何类可采用)的动态扩展 #import <Gizmo/Gizmo.h> @interface MyClass : NSObject { int count; id data; NSString* name; } - (id)initWithString:(NSString*)aName; + (MyClas......

芒果阿狸
2012/12/12
0
0
iOS开发的技巧,新的一篇,持续更新。。。(系列二)

上一篇:iOS开发的一些小技巧,持续更新。。。。(系列一) 20140331 1、说一说通知NSNotification和NSNotificationCenter 在iOS应用开发中有一个Notification Center的概念,它是一个单利对...

召唤攻城狮
2014/04/03
0
0
iOS8新特性扩展(Extension)应用之四——自定义键盘控件

iOS8新特性扩展(Extension)应用之四——自定义键盘控件 iOS8系统的开放第三方键盘,使得用户在输入法的选择上更加自主灵活,也更加贴近不同语言的输入风格。这篇博客,将介绍如何开发一个第三...

珲少
2015/07/31
0
9
Objective-C Category初体验

Categories可以为一个对象添加方法而不需要增加该类的子类或者更改当前的对象。实际上Categories通常被用来为已经存在的类添加方法,比如你可以自己为 NSString 字符串类添加你自己的方法。 ...

junwong
2012/05/13
12.8K
4
JSPatch库, 一个Apple官方支持的实现在线更新iOS应用的库

简介 项目主页: https://github.com/bang590/JSPatch 示例下载: https://github.com/ios122/ios122 JSPatch 可以让你用 JavaScript 书写原生 iOS APP。只需在项目引入极小的引擎,就可以使用...

ios122
2015/11/10
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

c语言之内存分配笔记

先看一个数组: short array[5] = {1,2} // 这儿定义的一个int类型的数组,数组第1和第2个元素值是1和2.其余后面默认会给值为0; 或者 short array[] = {1,2};//这儿数组第1和第2个元素,数组...

DannyCoder
今天
2
0
Shell | linux安装包不用选择Y/N的方法

apt-get install -y packageOR echo "y" | sudo apt-get install package

云迹
今天
2
0
Hadoop的大数据生态圈

基于Hadoop的大数据的产品圈 大数据产品的一句话概括 Apache Hadoop: 是Apache开源组织的一个分布式计算开源框架,提供了一个分布式文件系统子项目(HDFS)和支持MapReduce分布式计算的软件架...

zimingforever
今天
5
0
八大包装类型的equals方法

先看其中一个源码 结论:八大包装类型的equals方法都是先判断类型是否相同,不相同则是false,相同则判断值是否相等 注意:包装类型不能直接用==来等值比较,否则编译报错,但是数值的基本类型...

xuklc
今天
2
0
NoSQL , Memcached介绍

什么是NoSQL 非关系型数据库就是NoSQL,关系型数据库代表MySQL 对于关系型数据库来说,是需要把数据存储到库、表、行、字段里,查询的时候根据条件一行一行地去匹配,当量非常大的时候就很耗...

TaoXu
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部