<span style="font-size:18px;">//1 创建对象
//1 便利构造器(+号方法)
NSString *str1 = [NSString stringWithFormat:@"iPhone%d", 5];
NSLog(@"str1 = %@", str1);
//2 alloc+初始化方法
NSString *str2 = [[NSString alloc] initWithFormat:@"iPhone%d", 4];
NSLog(@"str2 = %@", str2);
//(3) 根据字符串初始化OC字符串对象
NSString *str3 = @"lanou";//存储字符串@"lanou"的地址
//2 求字符串长度
NSUInteger length = [str3 length];
NSLog(@"length = %lu", length);
//3 获取字符串总的某个字符
//Terminating app due to uncaught exception 'NSRangeException', reason: '-[__NSCFConstantString characterAtIndex:]: Range or index out of bounds'
//reason:问题产生的原因 .NSCFString == NSString, 又是一个-号方法, 所以问题产生的原因是:让一个NSString的类型对象, 调用characterAtIndex:方法时, 给定的下标越界了, 超出了范围
//解决方案:将数组下标修改为范围之内的数即可
unichar charac = [str3 characterAtIndex:4];
NSLog(@"%c", charac);
//4 判断是否以指定的字符串开头或结尾
//例如:判断一个字符串是否以http开头, 是否以.com结束
NSString *str4 = [[NSString alloc] initWithFormat:@"http://www.baidu.com"];
//判断是否以http开头
BOOL isPrefix = [str4 hasPrefix:@"http"];
NSLog(@"isPrefix = %d", isPrefix);
BOOL isSuffix = [str4 hasSuffix:@".com"];
NSLog(@"isSuffix = %d", isSuffix);
//5 查找指定字符串的范围
NSRange range = [str4 rangeOfString:@"www"];
if (range.length == 0) {
NSLog(@"No Found");
} else {
NSLog(@"location:%lu, length:%lu", range.location, range.length);
//将NSRange类型的结构体变量转变成字符串对象
NSLog(@"%@", NSStringFromRange(range));
}
//6 字符串截取(获取子字符串)
//1 获取给定的下标之后的子串, 包含指定下标对应的字符
//2 获取给定的下标之前的子串, 但是不包含指定下标对应的字符
//3 获取指定范围内的子串
NSString *subString1 = [str4 substringFromIndex:7];
NSLog(@"subString1 = %@", subString1);
NSString *subString2 = [str4 substringToIndex:7];
NSLog(@"subString2 = %@", subString2);
NSString *subString3 = [str4 substringWithRange:NSMakeRange(7, 4)];
NSLog(@"subString3 = %@", subString3);
//7 字符串拼接
NSString *str5 = [NSString stringWithFormat:@"lanou"];
//lanou后拼接henan
NSString *str6 = [str5 stringByAppendingString:@"henan"];
NSLog(@"str6 = %@", str6);
//lanou后拼接henan9ban
NSString *str7 = [str5 stringByAppendingFormat:@"%@%dban", str6, 9];//Format可以格式化输出
NSLog(@"str7 = %@", str7);
//8 替换字符串
NSString *str8 = [NSString stringWithFormat:@"lanouououisbigcompany"];
//1将o替换成牛逼
//第一个参数是被替换字符串 第二个参数是替换字符串
NSString *str9 = [str8 stringByReplacingOccurrencesOfString:@"ou" withString:@"牛逼"];
NSLog(@"str9 = %@", str9);
NSString *str10 = [str8 stringByReplacingCharactersInRange:NSMakeRange(3, 2) withString:@"牛逼"];
NSLog(@"str10 = %@", str10);
//9 字符串比较
NSString *str11 = [NSString stringWithFormat:@"bbc"];
NSString *str12 = [NSString stringWithFormat:@"bbc"];
NSInteger result1 = [str11 compare:str12];
NSLog(@"result1 = %ld", result1);
NSComparisonResult result2 = [@"311" compare:@"222"];
NSLog(@"result2 = %ld", result2);
//10 字符串和数值类型转换 从第一个字符开始如果在遇到除了空格之外的字符时, 将前面的空格忽略掉, 继续往下找, 读取数字, 直到遇到非数字时结束
//1 将字符串@"123"转换为整数123
NSInteger result3 = [@" 12a3as" intValue];
NSLog(@"%result3 = ld", result3);
//2 将数字转为字符串对象
NSString *str13 = [NSString stringWithFormat:@"%d", 5];
NSLog(@"str13 = %@", str13);
//11大小写装换
//1 将@"lanOU"全部转为大写 uppercaseString 转为 LANOU
//2 将@"lanOU"全部转为小写 lowercaseString 转为 lanou
//3 将@"lanOU"首字母转为大写 capitalizedString 转为 Lanou
NSString *str14 = [@"lanOU" capitalizedString];
NSLog(@"str14 = %@", str14);</span>相关推荐
从零到一:如何用YOLOv8和PyQt5打造一个高效的路面坑洞检测系统
本文详细介绍了如何利用YOLOv8和PyQt5开发一个高效的路面坑洞检测系统。从环境配置、数据采集标注到模型训练优化,再到PyQt5界面开发与系统集成,提供了完整的实战指南。该系统结合深度学习技术,显著提升了道路检测的准确性和效率,适用于各类道路维护场景。
iOS字符串NSString中去掉空格(或替换为某个字符串)
zhuan'zai'z 1、使用NSString中的stringByTrimmingCharactersInSet:[NSCharacterSetwhitespaceCharacterSet]]方法只是去掉左右两边的空格; 2、使用NSString *strUrl = [urlString stringByReplacingOccurrencesOfString:@" "withStri
Autosar Os降低CPU负载的方案总结
由于各个项目的实际场景不尽相同,可能需要有针对性的对症优化。如果你还有别的一些优化手段欢迎留言交流。
NSString 截取—开头和结尾—替换--包含
//从指定的地方到指定的地方 NSUInteger strNum = [UserDefaults stringForKey:@"mobile"].length; NSString *str = [[UserDefaults stringForKey:@"mobile"] substringWithRange:NSMakeRange(strNum-4, 4)]; //从开头到
Tesseract in Java - Intellij IDEA对Tess4J的配置和使用
最近要弄OCR,搜到这个,官网全英文,很烦,看看有没有中文的博客介绍,擦,一个比一个奇葩,还是自己按照官方的来吧,外网慢的很,传到csdn给大家下载。中文训练库下载地址: http://download.youkuaiyun.com/detail/d_dmelon/9916532Tess4J3.4下载地址: http://download.youkuaiyun.com/detail/d_dmelon/9916519安装
R语言实战:5分钟搞定相加交互效应分析(逻辑回归/Cox回归/GLMM/GEE全支持)
本文详细介绍了如何利用R语言中的`scitable`包快速实现相加交互效应分析,支持逻辑回归、Cox回归、GLMM和GEE等多种模型。通过自动化计算RERI、AP和SI等指标,大幅提升临床研究和流行病学分析的效率与准确性,特别适合处理多因素联合作用的复杂场景。
Range or index out of bounds
异常原因:Range or index out of bounds y
HFSS实战项目——基片集成波导(SIW)带通滤波器
设计了一款直接耦合的SIW带通滤波器, 采用直接耦合的形式, 工作频率覆盖19~21 GHz, 通带内插入损耗小于1.5 dB, 回波损耗小于-20 dB, 带外抑制特性良好.
iOS 字符串替换
有这样的需求 字符串中有几处特殊字符,我们需要替换 此时可以考虑使用NSString 的方法 stringByReplacingOccurrencesOfString 我们看一个简单例子 NSString * string=@"2011-11-29"; string=[string stringByReplacingOccurrencesOfString:@"
UG\NX二次开发 找不到指定的dlx文件(Specified Dlx file not found)
有群友问:用Ctrl+U运行的时候就报错,找不到指定的dlx文件Specified Dlx file not found。怎么处理。
Docker(八):Docker Compose(容器编排) 管理多容器应用—实战案例演示
🟢 Docker(八):Docker Compose(容器编排) 管理多容器应用—实战案例演示
字符串相关操作
1 便利构造器(+号方法) NSString*str1=[NSStringstringWithFormat:@"iPhone%d",5]; NSLog(@"str1=%@",str1); //2alloc+初始化方法 NSString*str2=[[NS...
Openclaw错误分析与解决方案之:All models are temporarily rate-limited. Please try again in a few minutes
Openclaw错误分析与解决方案之: All models are temporarily rate-limited. Please try again in a few minutes.
OC 字符串NSString 创建 拼接 插入 修改 删除 查找判断等基础用法
NSString 创建字符串 初始化方法 NSString *str = [[NSString alloc]init]; NSString *str = [[NSString alloc]initWithFormat:@"aaa"]; NSString *string = [[NSString alloc]initWithFormat:@"aaa%@%d"
数学建模模型总结
这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!
LinePhone3.2.7(android端最新版本) sip客户端
SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/
OC学习(四)不可变字符串类和可变字符串类
今天系统性的学习了OC中的NSString(字符串)类以及它的子类()
深度学习工具包 DeepLearningToolbox
深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[](https://bitdeli.com/free "Bitdeli Badge")
1、NSString (字符串)
// 1、字符串的创建 NSString * string1 = @"123abc"; NSString * string2 = [NSString stringWithFormat:@"123%@",string1];//@"123123abc" NSString * string3 = [[NSString alloc] init]; string3 = ...
VB摄像头监控
该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制
Foundation 之字符串 NSString和NSMutableString 用法
1.NSString 字符串常用方法 1.0 OC、C字符串类型转换 char *s = @“hello”; NSString *str = @“hello”; C->OC: NSString *str1 = [NSString stringWithUTF8String:s]; OC->C: [str UTF8Strig]; 1.1 创建字符串、格式化
NSString 常用处理方法
1. 初始化方法;
OC第六讲字符串函数
oc中的字符串
IOS———NSString
捡起去年学习的iOS,从基础开始,一步一步,完成它! 一、iOS之NSString NSString主要是针对字符串的一套用法,主要功能有: (1)字符串显示(直接显示,间接显示) (2)字符串截取,拼接,替换,比较,分割,遍历,转换 1.字符串显示 //初始化 //方法一: NSString *astring= @"how are you"; NSLog(@"astring %@...
OC语言-----NSString,NSMutableString基本用法
//NSMutableString(可变字符串)的拼接,删除.插入.替换 NSMutableString *str = [NSMutableString stringWithFormat:@"lanouhenan"]; //对于可变字符串的增删改方法, 都是在原字符串基础上进行修改, 所以修改之后的原字符串的内容发生变化, 所以无需返回值 //1
字符串:可变字符串与不可变字符串
一 NSString是不可变字符串,所有它所有产生其他字符串方法都是生成一个新的字符串,而不会改变原来字符串 第一种:字面量,它是常量字符串,存储常量区 NSString *str = @"abc"; 第二种是通过 快捷的构造方法 NSString stringWithFormat: 第三种方式 初始化方法 [NSString alloc] initWithFormat: 二,字
【IOS】NSString字符串的用法
Objective-C 中核心处理字符串的类是 NSString 与 NSMutableString ,这两个类最大的区别就是NSString 创建赋值以后该字符串的内容与长度不能在动态的更改,除非重新给这个字符串赋值。而NSMutableString 创建赋值以后可以动态在该字符串上更改内容与长度。 1.创建经典的NSString字符串 NSString 与 ch...
NSString练习
// // main.m // NSString // // Created by dllo on 15/7/20. // Copyright (c) 2015年 Clare. All rights reserved. // #import int main(int argc, const char * argv[])
OC NSString 字符串操作详细解析
在iOS开发中NSString被广泛的使用,系统中为NSString提供了很多实用的方法。具体如下: 字符串大小写转换 //@property (readonly, copy) NSString *uppercaseString; 字符串全部转为大写 //@property (readonly, copy) NSString *lowercaseString; 字符串全部转为小写 //@prope
不可变字符串(NSString)与可变字符串(NSMutableString)
一,不可变字符串(NSString); 1.直接赋值NSString *string1=@"nihao";2.先分配内存后赋值NSString *string2=[[NSString alloc]init]; string2=@"nihao";3.工厂方法制造对象NSString *string3=[NSString stringWithFormat:@"nihao"]; /* 注意: NSStr
308



被折叠的 条评论
为什么被折叠?



