`
woainike
  • 浏览: 79834 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
最近访客 更多访客>>
社区版块
存档分类
最新评论

NSString与NSMutableString字符串操作:增、删、改字符串

 
阅读更多

NSString是定义固定大小的字符串,NSMutableString可变,可对字符串做增、删、改、插入等操作。

源代码strings.m

-----------------------------------

#import <Foundation/Foundation.h>

int main (int argc, const char * argv[]) {
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];

    // insert code here...
    NSString *artist = @"Underworld";
NSLog(@"The \"
%@\" length is %d",artist,[artist length]);

NSString *substring = [artist substringFromIndex:5];

    NSLog(@"From index 5 to end that substring is \"
%@\"",substring);

NSRange range = [artist rangeOfString:@"w"];
NSLog(@"range.location = %d,是字母\"w\"所在的索引位置",range.location);
NSLog(@"range.length = %d,是字母\"w\"的长度",range.length);

NSLog(@"------------------------------");

NSString *song = @"美丽新世界,伍佰";
NSRange range1 = [song rangeOfString:@","];
NSString *songName = [song substringToIndex:range1.location];
NSString *songAuthor = [song substringFromIndex:range1.location + range1.length]; //如果不加上range1.length,取词就包含逗号

NSLog(@"歌曲:%@",song);
NSLog(@"\",\"号位置为 %d",range1.location);
NSLog(@"歌名:%@",songName);
//printf("歌名:%s \n",[songName UTF8String]);//正确
//NSLog(@"歌名:%@", [songName UTF8String]);//错误
NSLog(@"作者:%@",songAuthor);

NSLog(@"---------------------------------");
NSLog(@"可变字符串类NSMultableString演示:");

NSMutableString *movie = [[NSMutableString alloc] initWithString:@"变形金刚2"];

NSLog(@"
%@",movie);

[movie appendString:@",派拉蒙影业"];
NSLog(@"%@.方法appendString",movie);

NSRange range2 = [movie rangeOfString:@"派拉蒙影业"];
[movie replaceCharactersInRange:range2 withString:@"派拉蒙电影公司"]; //不是range2.location
NSLog(@"%@.方法replaceCharactersInRange",movie);

[movie deleteCharactersInRange:[movie rangeOfString:@"公司"]];
NSLog(@"%@.方法deleteCharactersInRange",movie);

    range2 = [movie rangeOfString:@"变形金刚"];
[movie insertString:@"科幻电影:" atIndex:range2.location];
NSLog(@"%@.方法insertString",movie);

[movie release]; //采用alloc的对象都不要忘记release
[pool drain];
    return 0;
}

分享到:
评论

相关推荐

    oc字符串操作.pdf

    `NSString` 是不可变的,一旦创建就无法修改,而 `NSMutableString` 支持在字符串上进行各种修改操作。 首先,我们来看`NSString`的使用: 1. **声明字符串**:`NSString *Beijing= @"北京欢迎您 ";` 这里声明了一...

    NSString_NSMutableString

    Objective-C里核心的处理字符串的类就是NSString和NSMutableString这两个类,这两个类完成了Objective-C中字符串大部分功能的处理。这两个类的最主要的区别是NSString创建赋值后不能动态修改长度和内容,除非给重新...

    Objective-C中字符串操作总结

    Objective-C是一种用于开发iOS应用的主要编程语言,其字符串操作主要依赖于NSString类和NSMutableString类。NSString用于创建不可变字符串对象,而NSMutableString则用于创建可变字符串对象。以下是Objective-C中...

    oc字符串操作[归类].pdf

    `NSString`和`NSMutableString`是OC中处理字符串的主要类。`NSString`代表不可变字符串,一旦创建就不能修改,而`NSMutableString`则允许对字符串进行修改。 1. **NSString(静态字符串)操作**: - **声明字符串*...

    OC-初学者基础-字符串

    NSString提供了多个方法来截取字符串: 1. `substringFromIndex:`:从指定索引开始截取到字符串末尾。 2. `substringToIndex:`:截取到指定索引为止。 3. `substringWithRange:`:根据指定的范围截取子串。 例如:...

    OC增删改查

    这个示例代码展示了OC中对字符串进行增删改查的基本操作,主要涉及`NSString`和`NSMutableString`两个类的使用。接下来,我们将详细讨论这些操作。 首先,我们来看`NSString`,它代表不可变的字符串,一旦创建就不...

    NSStringDemo

    NSLog(@"子字符串:%@", subStr); ``` `NSMutableString`则是一个可变的字符串类,允许你在创建后添加、删除或修改字符。如果你需要对字符串进行频繁的修改,使用`NSMutableString`会更加高效。例如,你可以使用`...

    判断字符串是否为空

    另外,我们还可以使用`isEqualToString:`方法来与特定的字符串进行比较。如果要检查字符串是否为空字符串(即@""),可以这样做: ```objc NSString *str = @""; // 空字符串 if ([str isEqualToString:@""]) { ...

    iOS 字符串转中文

    在iOS开发中,我们通常使用Foundation框架中的NSString和NSMutableString类来处理字符串。这两个类提供了丰富的字符串操作方法,包括查找、替换、格式化等。然而,当涉及到中文字符时,我们需要关注Unicode编码,...

    NSString扩展

    ### NSString扩展知识点解析 ...此外,通过引入第三方库,实现了JSON数据与字符串之间的互相转换以及字符串的加密处理等功能。这种扩展方式是iOS开发中常见的实践,有助于提高开发效率并减少重复编码工作。

    iOS 获取字符串首字母

    在Objective-C中,可以利用`NSString`类提供的方法来处理字符串。要获取字符串的首字母,我们可以先将字符串转换为小写,然后提取第一个字符,最后将其转换为大写,因为通常首字母都是大写的。以下是一个简单的示例...

    NSString帮助文档

    1. **性能优化**:对于需要频繁修改的字符串,考虑使用 `NSMutableString` 而不是 `NSString`。 2. **国际化**:确保使用 `NSLocalizedString` 函数来处理需要本地化的字符串。 3. **安全性**:在处理用户输入时,应...

    Objective-C中字符串NSString的常用操作方法总结

    - 常量字符串:直接使用双引号包裹的文本被视为NSString对象,如`@"i am an iOSDevTip!"`。 - 动态创建:通过`[[NSString alloc] init]`初始化一个空字符串,然后可以通过赋值操作符`=`改变其内容。 - ...

    iphone存储用法汇总

    - 使用格式化字符串:`NSString *astring = [NSString stringWithFormat:@"%d. This is %i string!", i, j];` - 创建临时字符串:`NSString *astring = [NSString stringWithCString:"This is a temporary string...

    NSString+ReplaceUnicode

    在iOS开发中,NSString是处理文本数据的基本类,它提供了丰富的字符串操作方法。然而,当字符串中含有Unicode编码时,可能会遇到一些问题,如显示异常或处理困难。"NSString+ReplaceUnicode"是一个类别(Category)...

    iphone生命周期 详解

    Objective-C中的字符串处理主要包括获取字符串长度、字符串连接、字符串修改(如插入、删除)、字符串比较以及检索字符串等操作。 1. **获取字符串长度**:使用`-[NSString length]`方法。 ```objective-c ...

    Foundation框架

    1. 创建字符串:可以使用`@""`字面量或者`+[NSString stringWithString:]`等方法创建字符串。 2. 字符串比较:`= `比较的是指针,`isEqualToString:`比较的是内容。 3. 大小写转换:`uppercaseString`和`...

    NSHash字符串加密

    在给定的标题“NSHash字符串加密”中,我们关注的是Objective-C中使用NSHash类进行字符串加密的方法。 NSHash是苹果提供的一个轻量级哈希函数集合,它可以对对象进行简单的加密操作,生成一个固定长度的哈希值。...

    ObjectiveC 最经典最全的基础库

    **1.4 用标准C创建字符串:`initWithCString:`方法** ```objective-c char *Cstring = "This is a String!"; NSString *astring = [[NSString alloc] initWithCString:Cstring]; NSLog(@"astring: %@", astring); [a...

    深拷贝与浅拷贝;copy与mutableCopy;容器类型的深拷贝;copy和strong;

    3、无论是声明NSString还是NSMutableString类型的属性时,我们希望此属性被赋值为NSMutableString类型的字符串后,此属性不会因这个可变类型字符串的改变而改变(这也是多数情况下的用法),那就用copy修饰属性

Global site tag (gtag.js) - Google Analytics