字符串的插入、删除、查找并删除、重新赋值、替换

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {

@autoreleasepool {

//nsstring父类   NSMutableString可变字符串子类

NSMutableString *mustr=[[NSMutableString alloc]init];

NSMutableString *mustr1=[NSMutableString stringWithFormat:@"Hello"];

//将不可变的字符串放置到可变字符串内

NSString *[email protected]"welcome to oc";

mustr=[NSMutableString stringWithString:str];

//插入

[mustr insertString:@" students " atIndex:7];

[mustr appendString:@" teacher"];

[mustr appendFormat:@"第二遍插入:%@",str];

//删除

[mustr deleteCharactersInRange:NSMakeRange(8, 10)];

//查找并删除

NSRange rang=[mustr rangeOfString:@"第二遍插入:welcome to oc"];

if (rang.location!=NSNotFound) {

[mustr deleteCharactersInRange:rang];

}

//重新赋值

[mustr setString:str];

//替换

NSRange rang1=[mustr rangeOfString:@"oc"];

[mustr replaceCharactersInRange:rang1 withString:@"IOS"];

NSLog(@"%@",mustr);

}

return 0;

}

时间: 2024-09-29 18:28:47

字符串的插入、删除、查找并删除、重新赋值、替换的相关文章

java实现数据结构-线性表-顺序表,实现插入,查找,删除,合并功能

package 顺序表; import java.util.ArrayList; import java.util.Scanner; public class OrderList { /** * @param args * @author 刘雁冰 * @2015-1-31 21:00 */ /* * (以下所谓"位置"不是从0开始的数组下标表示法,而是从1开始的表示法.) * (如12,13,14,15,16数据中,位置2上的数据即是13) * * 利用JAVA实现数据结构-线性表-顺

Java实现二叉排序树的插入、查找、删除

import java.util.Random; /** * 二叉排序树(又称二叉查找树) * (1)可以是一颗空树 * (2)若左子树不空,则左子树上所有的结点的值均小于她的根节点的值 * (3)若右子树不空,则右子树上所有的结点的值均大于她的根节点的值 * (4)左.右子树也分别为二叉排序树 * * * 性能分析: * 查找性能: * 含有n个结点的二叉排序树的平均查找长度和树的形态有关, * (最坏情况)当先后插入的关键字有序时,构成的二叉排序树蜕变为单枝树.查找性能为O(n) * (最好

顺序栈的初始化,建立,插入,查找,删除。

--- 顺序栈:普通数组保存方式,栈顶(max-1)为满,栈底(-1)为空: //////////////////////////////////////////// //顺序栈的初始化,建立,插入,查找,删除.// //Author:Wang Yong // //Date: 2010.8.19 // //////////////////////////////////////////// #include <stdio.h> #include <stdlib.h> #define

单链表的使用(插入,查找,删除,链表的倒置,删除相同结点)

typedef struct node//该结构体代表一个结点{ int data; //结点的数据域 struct node *next; //结点的指针域}lnode,*linklist; //定义一个结构体变量和指向结构体的指针//用头插法创建一个链表linklist create_begin(){ linklist head=(linklist)malloc(sizeof(lnode));//定义头结点并开辟空间 head->next=NULL; //为避免指针乱指,将头结点下一个指针赋

NetBSD Make源代码阅读三:链表之插入、查找、删除与对每个节点应用函数

1. 插入节点 在指定节点后面插入新的节点.这个函数首先检查参数的有效性.然后分两种情况处理插入: 1> 如果要插入的链表为空,新节点是链表的第一个节点,新初化新节点以后,直接让firstPtr与lastPtr指向这个节点. 2>如果链表中已有其它节点,就改变前后节点的指针,将新节点插入. /*- *----------------------------------------------------------------------- * Lst_InsertAfter -- * 创建新

B-树的插入、查找、删除

转自:http://blog.163.com/zhoumhan_0351/blog/static/39954227200910231032917/ 前面讨论的查找都是内查询算法,被查询的数据都在内存.当查询的数据放在外存,用平衡二叉树作磁盘文件的索引组织时,若以结点为内外存交换的单位,则找到需要的关键字之前,平均要进行lgn次磁盘读操作,而磁盘.光盘的读写时间要比随机存取的内存代价大得多.其二,外存的存取是以“页”为单位的,一页的大小通常是1024字节或2048字节. 针对上述特点,1972年R

单链表的初始化,建立,插入,查找,删除。

#include <stdio.h> #include <stdlib.h> typedef int ElemType; //定义结点类型 typedef struct Node { ElemType data;              //单链表中的数据域 struct Node *next;          //单链表的指针域 }Node,*LinkedList; //单链表的初始化 LinkedList LinkedListInit() { Node *L; L = (N

哈希(hash) 之插入和查找(链地址法)

一:学些心得 1 getHash函数的设计最牛的是Unix中处理字符串的ELFHash():当然也可以自己写一个比较简单的getHash函数关键在于去mod M的M值,使器均匀的分布(一般是不大于hash_size的某一个素数,接近于2的某次幂):但是有一点需要注意就是返回的hash值必须是正值. 2 处理冲突的方法:链地址法是比较好的方法了(静态动态都可以的):二次哈希(一般是加key值)再探测:或者加1再探测 3 插入和查找以及删除的第一步都是一样的,getHash(),时候存在-- 4 对

Mybatis+Struts2的结合:实现用户插入和查找

总结一下今天一个成功的小实验:Mybatis+Struts2的结合:实现用户插入和查找.删除和修改如果以后写了,会继续更新. 一 准备工作. 1.新建一个java web项目. 2.在webContent\lib目录下导入所需要的jar包. a.struts2需要的jar包. struts2 xwork-core.jar strut2-core.jar ognl.jar commoms-lang.jar freemarker.jar commons-fileupload.jar 包的位置: st

ios 字符串的插入删除查找与替换,删除空格

NSString *str1 = @"This is a example.";  NSMutableString *mstr = [[NSMutableString alloc] init]; //创建可变字符串  NSRange substr; //子字符串的范围mstr = [NSMutableString stringWithString:str1];  //插入字符  [mstr insertString:@"very easy " atIndex:10];