文档章节

有关NSString的一些类扩展方法

默默沫沫shine
 默默沫沫shine
发布于 2016/05/23 13:24
字数 211
阅读 16
收藏 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

 

© 著作权归作者所有

上一篇: 获取用户IP
默默沫沫shine
粉丝 0
博文 15
码字总数 4174
作品 0
朝阳
程序员
私信 提问
加载中

评论(0)

编写 Objective-C 代码/掌握基本的编程技能 之 读后笔记

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

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

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

召唤攻城狮
2014/04/03
667
0
iOS中KVC与KVO的应用解析

iOS中KVC与KVO的应用解析 一、NSKeyValueCoding(KVC) 1、从一个小例子引入 KVC键值编码是Object-C为我们提供的一种对成员变量赋值的方法。在探讨其方法之前,我们先来看一个小例子: 首先,...

珲少
2015/05/05
473
0
JSPatch库, 一个Apple官方支持的实现在线更新iOS应用的库

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

ios122
2015/11/10
588
0
iOS8新特性扩展(Extension)应用之四——自定义键盘控件

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

珲少
2015/07/31
4.1K
9

没有更多内容

加载失败,请刷新页面

加载更多

史上最全的“文件或目录损坏且无法读取”的解决办法大集合

问题描述: G盘打不开文件或目录损坏且无法读取,是因为这个I盘的文件系统内部结构损坏导致的。史上最全的“文件或目录损坏且无法读取”的解决办法大集合具体的恢复方法看正文 工具/软件:极...

计算无敌
今天
9
0
2048游戏的最佳算法是什么? - What is the optimal algorithm for the game 2048?

问题: I have recently stumbled upon the game 2048 . 我最近偶然发现了2048游戏。 You merge similar tiles by moving them in any of the four directions to make "bigger" tiles. 您可......

javail
今天
9
0
Spring Cloud Ribbon 客户端负载均衡

Ribbon客户端组件提供一系列完善的配置选项,比如连接超时、重试、重试算法等,内置可插拔、可定制的负载均衡组件。下面是用到的一些负载均衡策略: 简单轮询负载均衡 加权轮询负载均衡 区域...

泥瓦匠BYSocket
今天
7
0
为什么在Python 3中“范围(1000000000000000(1000000000000001))”这么快?

问题: It is my understanding that the range() function, which is actually an object type in Python 3 , generates its contents on the fly, similar to a generator. 据我了解, ra......

技术盛宴
今天
9
0
OSChina 周四乱弹 —— 卖全家桶!

Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 @巴拉迪维 :陈慧娴的单曲《与泪抱拥》 陈慧娴的嗓音加上向雪怀的词,这样的经典组合真不多。#今日歌曲推荐# 《与泪抱拥》- 陈慧娴 手机党少年...

小小编辑
今天
15
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部