//
// main.m
// NSString
//
// Created by WildCat on 13-7-25.
// Copyright (c) 2013年 wildcat. All rights reserved.
// #import <Foundation/Foundation.h>
#pragma mark 创建字符串
void testCreat(){
NSString *str=@"你好。";
NSLog(@"str :%@",str); NSString *str2=[NSString stringWithUTF8String:"哈哈哈"];
NSLog(@"str2 :%@",str2);
NSString *str3=[[NSString alloc] initWithString:@"测试3"] ;
NSLog(@"str3 :%@",str3); } #pragma mark 字符串的搜索
void search(){ NSString *str=@"123456456.txt";
NSLog(@"是否以 123 开头:%i",[str hasPrefix:@"123"]);
NSLog(@"是否以 txt 结尾:%i",[str hasSuffix:@"txt"]); //从前向后搜索
NSRange range=[str rangeOfString:@"456"]; if (range.location==NSNotFound) {
NSLog(@"未找到");
}else{
NSLog(@"找到的范围是:%@",NSStringFromRange(range)); }
//从后向前搜索
range=[str rangeOfString:@"456" options:NSBackwardsSearch ];
NSLog(@"找到的范围是:%@",NSStringFromRange(range)); } #pragma mark 字符串截取
void mysubString(){ NSString *str=@"123456789";
//从第6个位置开始截取
NSLog(@"%@",[str substringFromIndex:6]);
//截取到第6个位置
NSLog(@"%@",[str substringToIndex:6]);
//随便截取一段字符串
NSLog(@"%@",[str substringWithRange:NSMakeRange(1, 3)]); NSString *str2=@"1-2-a-b-c";
//字符串分割
NSArray *array=[str2 componentsSeparatedByString:@"-"];
NSLog(@"%@",array);
}
#pragma mark 与路径相关
void stringWithPath(){ //快速创建一个自动释放的数组
NSMutableArray *array=[NSMutableArray array];
[array addObject:@"User"];
[array addObject:@"Wildcat"];
[array addObject:@"APP"];
//通过一个数组创建一个路径字符串
NSString *path=[NSString pathWithComponents:array];
NSLog(@"Path is:%@",path);
//把一个路径截取为数组
NSArray *apath=[path pathComponents];
NSLog(@"Array is;%@",apath); //删除最后一个目录 NSLog(@"Array is;%@",[path stringByDeletingLastPathComponent]);
//拼接一个路径
NSLog(@"Array is;%@",[path stringByAppendingPathComponent:@"123.txt"]); } #pragma mark 其他用法 void other(){
NSString *str=@"123";
int a=[str intValue];//转化为整数
NSLog(@"%i",a);
//计算字数而不是字符数
NSLog(@"length=%zi",[@"我是字符串12345" length]);
//返回对应的字符
unichar c=[@"abc123" characterAtIndex:1];
NSLog(@"第2个字符是:%c",c); //返回C语言字符串
const char *s=[@"abc" UTF8String];
NSLog(@"C语言字符串是:%s",s); } #pragma mark 主函数
int main(int argc, const char * argv[])
{ @autoreleasepool { // testCreat();
// creatWithContent();
//writeToFile();
//search();
//调用截取字符串函数
//mysubString();
//stringWithPath();
other();
}
return 0;
}

Object-c学习之路七(oc字符串操作)的更多相关文章

  1. Python3学习之路~2.3 字符串操作

    字符串操作 特性:不可修改 name="my \tname is alex" print(name.capitalize()) #首字母变大写 print('Alex LI'.ca ...

  2. [原创]java WEB学习笔记66:Struts2 学习之路--Struts的CRUD操作( 查看 / 删除/ 添加) 使用 paramsPrepareParamsStack 重构代码 ,PrepareInterceptor拦截器,paramsPrepareParamsStack 拦截器栈

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  3. objective-C学习笔记(七) 字符串处理

    字符串NSString NSString 是一个Unicode编码,16位字符的字符序列. NSString 是一个类,拷贝时需要注意. 初始化方法:字面量初始化.初始化器.工厂方法. NSStrin ...

  4. R语言学习 第五篇:字符串操作

    文本数据存储在字符向量中,字符向量的每个元素都是字符串,而非单独的字符.在R中,可以使用双引号,或单引号表示字符. 一,字符串中的字符数量 函数nchar()用于获得字符串中的字符数量: > s ...

  5. C语言学习笔记 (008) - C语言字符串操作总结大全(超详细)(转)

    1)字符串操作 strcpy(p, p1) 复制字符串 strncpy(p, p1, n) 复制指定长度字符串 strcat(p, p1) 附加字符串 strncat(p, p1, n) 附加指定长度 ...

  6. Object-c学习之路(oc点语法)

    最近想学习object-c了自己上网找了一些资料自学了一下:oc中的点语法是为了java.c等的程序员更好的上手而添加的功能. 主函数 // // main.m // OcTest1 // // Cr ...

  7. zigbee学习之路(七):定时器3(中断方式)

    一.前言 上次我们学习了了用定时器3进行查询方式来进行溢出判断,今天我们来换一种方式,用中断方式来检测和查询定时器3的溢出. 二.原理与分析 要使用定时器3,我们必须先要配置的是T3CTL,来把定时器 ...

  8. IOS学习之路七(使用 Operation 异步运行任务)

    在 application delegate 头文件(.h)中声明一个 operation 队列和两个 invocation operations: #import <UIKit/UIKit.h ...

  9. python学习之路二(字符串,字典,序列和元组)

    # -*- coding: utf-8 -* ''' Created on 2013-7-26 @author: lixingle ''' #!/usr/bin/python import math# ...

随机推荐

  1. nginx配置 的话注意几点 1.错误时注意看log 2.天威证书的话,有文档按照其文档一步步配置即可;3每句话的结尾注意千万别丢掉分号

    nginx配置 的话注意几点 1.错误时注意看log  2.天威证书的话,有文档按照其文档一步步配置即可:3每句话的结尾注意千万别丢掉分号:4.配置https时 其转发可以转发到http上 pass_ ...

  2. http://home.cnblogs.com/

    说起编辑器,可能大部分人要推荐的是Vim和Emacs,本人用过Vim,功能确实强大,但是不是很习惯,之前一直有朋友推荐SUblime Text 2这款编辑器,然后这段时间就试了一下,就深深地喜欢上这款 ...

  3. cocos2dx lua 学习笔记(二)

    安装开发环境 sublime - http://www.sublimetext.com/2 package control - http://packagecontrol.io/installatio ...

  4. 格而知之7:我所理解的Runtime(2)

    消息发送(Messaging) 8.以上便是runtime相关的一些数据结构,接下来我们回看一开始的疑问: objc_msgSend()函数在执行的过程中是如何找到对应的类,找到对应的方法实现的呢? ...

  5. jquery实现仿商品星级评价

    一,HTML部分 <div id="rating-star">     <a href="#">0</a>     < ...

  6. 【DataStructure】Some useful methods about linkedList(二)

    Method 1: Add one list into the other list. For example, if list1is {22, 33, 44, 55} and  list2 is { ...

  7. 这个更新需要花去 50.6 M 磁盘上总计 /boot 的空间。请在 7737k 磁盘上留出 /boot 空间。清空您的回收站和临时文件,用“sudo apt-get clean

    系统升级会下载多余的内核,删除即可. 1.命令:dpkg --get-selections|grep linux             //带image的为系统内核 2.命令:   uname -a ...

  8. TS流PAT/PMT详解

    一 从TS流开始 从MPEG-2到DVB,看着看着突然就出现了一大堆表格,什么PAT.PMT.CAT……如此多的表该怎样深入了解呢? 我们知道,数字电视机顶盒接收到的是一段段的码流,我们称之为TS(T ...

  9. hibernate报错:org.hibernate.MappingException: No Dialect mapping for JDBC type: -1

    解决方法:自定义一个Hibernate Dialect. package com.yourcompany.util ; import java.sql.Types; import org.hibern ...

  10. ios9基础知识总结(一)

    I--load 类被加载时自动调用,只要类的项目中,运行时就会加载.类一加载,此方法就会调用 //类被加载时调用,只要类的项目中,运行时就会加载,类一加载,此方法就调用 + (void)load { ...