创建一个字符串对象:

NSstring * str1 = @"hello";
NSString * str = [[NSString alloc]initWithString:@"hello world!"];
NSString * str_1 = [[NSString alloc]initWithUTF8String:"hello world"];//把C的字符串转化为OC的字符串
int a = 123;
NSString * str_3 = [[NSString alloc]initWithFormat:@"a = %d %s%@", a, "abcd", @"efg"];//用格式化字符串初始化
//可完成字符串的拼接以及完成C的字符串与OC的字符串的转化
NSString * str1 = [NSString stringWithString:@"hello world"];
NSString * str2 = [NSString stringWithUTF8String:"hello world"];
NSString * str3 = [NSString stringWithFormat:@"%s","hello world"];

字符串转化:

NSString * str = @"hello";
const char *p = [str UTF8String];将OC字符串转化为C的字符串 str = @"123";
int a = [str intValue];//将数字串转化成整型数据
[str floatValue];//将数字串转化成float型
[str doubleValue];//将数字串转化成double型

常用的NSString Message(OC 的字符 :typedef unsigned short unichar)

NSLog(@"%ld",[str1 length]);   //求字符串长度

NSLog(@"%c", [str1 characterAtIndex:1]);//获取字符串中的字符

BOOL ret =  [str1 isEqualTo:str2];//比较两个字符串是否相等,相等返回YES(1),不相等返回NO(0)   (BOOL   YES(1)  NO(0))

long ret1 = [str1 compare:str2];//比较两个字符串的大小,str1大于 返回1  相等返回0   小于返回-1

long ret2 = [str1 caseInsensitiveCompare:str2];//不区分大小写比较字符串大小

NSString * ptr = [str2 uppercaseString];//将字符串中的所有小写字符转换成大写 不改变原来的字符串

ptr = [str1 lowercaseString];//将字符串中的所有大写字符转换成小写 不改变原来的字符串

ptr = [str3 capitalizedString];//将字符串中出现的第一个字母转换成大写,其余字母小写

NSString * str4 = @"hello world";

NSRange range = [str4 rangeOfString:@"wr"];//查找子串,找不到返回NSNotFound 找到返回location和length

if (range.location != NSNotFound) {

    NSLog(@"%ld %ld",range.location, range.length);

}

NSString * str5 = @"helloworld";

NSString * ptr1 = [str5 substringToIndex:4];//字符串抽取 从下标0开始到4 不包括4

NSString * ptr2 = [str5 substringFromIndex:5];//从下标5开始抽取到字符串结束 包括5

NSRange range1 = {4,3};//结构体初始化

NSString * ptr3 = [str5 substringWithRange:range1];//在range指定范围内抽取

NSString * ptr4 = [str5 substringWithRange:NSMakeRange(4,3)];//NSMakeRange可以生成一个结构体

NSString * str = @"www.1000phone.com";

BOOL ret = [str hasPrefix:@"www"];//判断字符串是否以指定字符串开头

NSString * str1 = @"1.txt";

BOOL ret1 = [str hasSuffix:@".txt"];//判断字符串是否以指定的字符串结尾

NSMutableString可变字符串(动态增加和减少的)   继承于NSString可以使用NSString的所有方法

NSMutableString * str =  [[NSMutableString alloc]initWithString:@"hello"];//将不可变的字符串转换为可变的字符串

[str insertString:@"123" atIndex:1];//在指定下标(不要越界)位置插入NSString类型字符串

[str appendString:@"123"];//在字符串末尾追加字符串

[str deleteCharactersInRange:NSMakeRange(0, 2)];//从指定下标删除length个字符

[str setString:@"qianfeng"];//修改字符串亦称对该可变字符串赋值

[str replaceCharactersInRange:NSMakeRange(3, 1) withString:@"ios"];//将指定下标位置的length个字符替换为指定的字符串

OC字符串常用函数的更多相关文章

  1. Excel怎样从一串字符中的某个指定“字符”前后截取字符及截取字符串常用函数

    怎么样可以从一串字符中的某个指定位置的前或后截取指定个数的字符. 如:12345.6789,我要截取小数点前(或后)的3个字符.怎么样操作, 另外,怎么样从右边截取字符,就是和left()函数相反的那 ...

  2. python的基本用法(三)字符串常用函数

    字符串常用函数 # s='.abcd.'# new_s=s.strip('.')#默认去掉字符串两边的空格和换行符,想去掉什么括号中就写什么# print('s',s)# print('new_s', ...

  3. python字符串 常用函数 格式化字符串 字符串替换 制表符 换行符 删除空白 国际货币格式

    # 字符串常用函数# 转大写print('bmw'.upper()) # BMW# 转小写print('BMW'.lower()) # bmw# 首字母大写print('how aae you ?'. ...

  4. SQL Server中截取字符串常用函数

    SQL Server 中截取字符串常用的函数: .LEFT ( character_expression , integer_expression ) 函数说明:LEFT ( '源字符串' , '要截 ...

  5. C 字符/字符串常用函数

    string.h中常用函数 char * strchr(char * str ,char ch); 从字符串str中查找首次出现字符ch的位置,若存在返回查找后的地址,若不存在则返回NULL void ...

  6. golang字符串常用函数

    package utils import "fmt" import "strconv" import "strings" var str s ...

  7. python面试题(二)字符串常用函数

    今天在微信的公众号上看到了一遍python学习开发的文章,里面有一些python的面试题,碰巧最近python不知道学什么了,索性学一下这篇文章啊!!先写一下一些字符串的常用函数.(ps:本人太菜,若 ...

  8. Python 字符串常用函数

    操作字符串的常用函数 函数 描述(返回值) str.capitalize() 将字符串的第一个字符大写 str.title() 返回标题化的字符串,即每个单词的首字母都大写 str.upper() 全 ...

  9. php 字符串常用函数

    数组.字符串和数据库是我们函数里面最.最.最常用的三类函数. 当然PHP的字符串函数也有很多.我们最常使用的两个系列的字符串: 1.单字节字符串处理函数 2.多字节字符串处理函数 3.字符串编码转换函 ...

随机推荐

  1. 01-Java基础知识:数据类型与变量、标识符、运算符、表达式

    Java基础知识:数据类型与变量.标识符.运算符.表达式 一.数据类型 Java定义了基本数据类型.引用数据类型.自定义类型. 八种基本数据类型:byte (1). short (2).  int ( ...

  2. mfs-用户

    http://blog.csdn.net/liuyunfengheda/article/details/5260278 MFS总结 http://bbs.chinaunix.net/thread-16 ...

  3. OpenJudge-计算点的距离并排序

    /*===================================== 距离排序 总时间限制: 1000ms 内存限制: 65536kB 描述 给出三维空间中的n个点(不超过10个),求出n个 ...

  4. jquery 整理之一

    1.选择器: jQuery 属性选择器 jQuery 使用 XPath 表达式来选择带有给定属性的元素. $("[href]") 选取所有带有 href 属性的元素. $(&quo ...

  5. android的Looper例子

    直接贴代码 MsgThread.java package bb.aa.looperdemo; import android.os.Handler; import android.os.Looper; ...

  6. 安装ORACLE后,改变计算机名称,导致OracleDBConsoleOrcl服务无法启动

    错误信息: 启动oracledbconsoleorcl 服务提示 -- “--Windows不能再本地计算机启动oracledbconsoleorcl  有关更多信息,查阅系统事件日志,如果这是非Mi ...

  7. 黄聪:wordpress/wp-includes目录文件

    wp-includes/cache.php wp-includes/capabilities.php wp-includes/class-IXR.php:Incutio XML-RPC库.包括了 XM ...

  8. 黄聪:WordPress 多站点建站教程(六):使用WP_Query、switch_to_blog函数实现获取子站点分类中的文章

    首先在你使用主题的funtions.php里面添加下代码: //根据时间显示最新的分类文章内容,每个站点显示一篇内容 //$blog_id 子站点ID //$catid 分类ID wp_reset_q ...

  9. linux下如何不编译opencv的某些模块

    opencv非常庞大,有很多模块,但大部分情况我们可能只会用到三四个模块,此时如果还是直接cmake . & make,将会非常费时,尤其是部署时很麻烦. 所以需要去除掉一些不需要的模块,可参 ...

  10. 正则表达式中的\b

    转自百度知道:https://zhidao.baidu.com/question/58688915.html\b表示的应该是ASCII码中的BS字符(退格字符),匹配字与字中间那个看不见的东西(即一个 ...