2个字符串是否相等 ios_ios 比较两个字符串是否相等 - CSDN
精华内容
参与话题
  • // 字符串的比较判断 // // Created by admin on 15/8/13. // Copyright (c) 2015年 admin. All rights reserved. // #import int main(int argc, const char * argv[]

    //

    //  main.m

    //  字符串的比较判断

    //

    //  Created by admin on 15/8/13.

    //  Copyright (c) 2015 admin. All rights reserved.

    //


    #import <Foundation/Foundation.h>


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

        @autoreleasepool {

            

    //  1. 判断字符串是否为空

            NSString *str = @"";

            if (str == nil || str.length == 0) {

                

                NSLog(@"字符串为空");

            }

    //  2. 判断字符串是否以指定的内容开头

            NSString *str1 = @"www.baidu.com";

            BOOL isPerfix = [str1 hasPrefix:@"rww"];// perfix 前缀

            if (isPerfix) {

                NSLog(@"是以ww开头");

            }else

            {

                NSLog(@"开头错误");

            }

    //      NSLog(@"hasPerfix %@",isPerfix? @"YES":@"NO");  上面判断的优化

            

    //  3. 判断字符串是否以指定的内容结尾

    //     在开发中中常用在 判断文件格式 例如:.txt .avi,.rmvb mkv doc mp3,mp4 pdf

            BOOL isSuffix = [str1 hasSuffix:@"com"];// suffix 后缀

            NSLog(@"hasSuffix %@",isSuffix? @"YES" : @"NO");

            

    /*  4. 判断两个字符串是否相等

           注意:

             > 使用 == 判断两个字符串,实际上是在判断两个字符串的地址是否相等

             > 如果地址相等,那么字符串相等

             > 然而,在实际开发中,切记不要使用 == 去判断两个字符串相等

             > 判断两个字符串是否相等,必须使用NSString提供给我们的方法

                isEqualToString

    */

            NSString *str2 = @"abcdefgh";

            NSString *str3 = @"abcdeeee";

            BOOL isEqual = [str2 isEqualToString:str3];

            NSLog(@"isEqual %@",isEqual? @"YES" : @"NO");

    /*

        5. isEqualToString的增强版 compare

            > compare 比较的是ASCII

            > 返回值是枚举

     */

           NSComparisonResult result = [str2 compare:str3];

            switch (result) {

                case NSOrderedAscending:

                    NSLog(@"NSOrderedAscending");

                    break;

                case NSOrderedSame:

                    NSLog(@"NSOrderedSame");

                    break;

                case NSOrderedDescending:

                    NSLog(@"NSOrderedDescending");

                    break;

                default:

                    break;

            }    

        }

        return 0;

    }


    展开全文
  • 如果您要在忽略大小写的情况下比较2个字符串是否相等,比如 (@"vvv"==@"Vvv") = true; 如果每次都转换大小写再比较的话,会很麻烦。下面提供2个忽略大小写时比较字符串是否相等的方法  //不考虑大小写比较...
    如果您要在忽略大小写的情况下比较2个字符串是否相等,比如 (@"vvv"==@"Vvv") = true; 如果每次都转换大小写再比较的话,会很麻烦。下面提供2个忽略大小写时比较字符串是否相等的方法
    
    1.   //不考虑大小写比较字符串1

    2.     NSString *astring01 = @"this is a String!";

    3.     NSString *astring02 = @"This is a String!";

    4.     BOOL result = [astring01 caseInsensitiveCompare:astring02] = = NSOrderedSame;    

    5.     NSLog(@"result:%d",result);     

    6.     //NSOrderedDescending判断两对象值的大小(按字母顺序进行比较,astring02小于astring01为 真)复制代码
    复制代码
    1. //不考虑大小写比较字符串2

    2.     NSString *astring01 = @"this is a String!";

    3.     NSString *astring02 = @"This is a String!";

    4.     BOOL result = [astring01 compare:astring02

    5.                             options:NSCaseInsensitiveSearch | NSNumericSearch] = = NSOrderedSame;    

    6.     NSLog(@"result:%d",result);     



    7.     //NSCaseInsensitiveSearch:复制代码
    复制代码

    不区分大小写比较 NSLiteralSearch:进行完全比较,区分大小写 NSNumericSearch:比较字符串的字符个数,而不是字符值。
    展开全文
  • iOS 怎样判断两个字符串是否相等

    千次阅读 2016-01-09 00:39:48
    例1: NSString *string = @"one"; NSString *stringTwo= @"two";  BOOL isResult = [string compare:stringTwo];  NSLog(@"=========%d",isResult);...例2: ...字符串相等用方法isEqualTo

    例1:

    NSString *string = @"one";

    NSString *stringTwo= @"two";

     BOOL isResult = [string compare:stringTwo];

     NSLog(@"=========%d",isResult);

    0相等,-1不相等


    例2:

    字符串相等用方法isEqualToString

    if([string isEqualToString:stringTwo]

    {

         //相等

    }

    展开全文
  • iOS字符串比较

    2020-05-14 14:22:06
    在开发的过程中,经常遇到需要比较两个字符串,当然比较的方法很多,下面总结一下比较字符串的方法 一.用C语言比较:strcmp函数 char string1[] = "string!"; char string2[] = "string!"; if(strcmp(string1, ...

    在开发的过程中,经常遇到需要比较两个字符串,当然比较的方法很多,下面总结一下比较字符串的方法

    一.用C语言比较:strcmp函数

     

    char string1[] = "string!";
    char string2[] = "string!";
    if(strcmp(string1, string2) == 0)
    {
        NSLog(@"1");
    }
    

    C中一般都是操作单个字符,不像OC有字符串对象的概念,C中需要操作一串字符,就需要用到数组.

    二.用OC语言比较

    1.isEqualToString方法:判断字符串是否相等

     

    NSString *astring01 = @"This is a String!";
    NSString *astring02 = @"This is a String!";
    BOOL result = [astring01 isEqualToString:astring02];
    NSLog(@"result:%d",result);
    

    2.compare方法(comparer返回的三种值)

    • NSOrderedSame 判断两者内容是否相同

     

    NSString *astring01 = @"This is a String!";
    NSString *astring02 = @"This is a String!";    
    BOOL result = [astring01 compare:astring02] == NSOrderedSame;    
    NSLog(@"result:%d",result);    
    
    • NSOrderedAscending 判断两对象值的大小(按字母顺序进行比较,astring02大于astring01为真)

     

    NSString *astring01 = @"This is a String!";
    NSString *astring02 = @"this is a String!";
    BOOL result = [astring01 compare:astring02] == NSOrderedAscending;    
    NSLog(@"result:%d",result);
    
    • NSOrderedDescending 判断两对象值的大小(按字母顺序进行比较,astring02小于astring01为真)

     

    NSString *astring01 = @"this is a String!";
    NSString *astring02 = @"This is a String!";
    BOOL result = [astring01 compare:astring02] == NSOrderedDescending;    
    NSLog(@"result:%d",result);
    

    3.不考虑大小写比较字符串

    • NSOrderedDescending判断两对象值的大小(按字母顺序进行比较,astring02小于astring01为真

     

    NSString *astring01 = @"this is a String!";
    NSString *astring02 = @"This is a String!";
    BOOL result = [astring01 caseInsensitiveCompare:astring02] == NSOrderedSame;    
    NSLog(@"result:%d",result);     
    
    • NSCaseInsensitiveSearch:不区分大小写比较 NSLiteralSearch:进行完全比较,区分大小写 NSNumericSearch:比较字符串的字符个数,而不是字符值。

     

    NSString *astring01 = @"this is a String!";
    NSString *astring02 = @"This is a String!";
    BOOL result = [astring01 compare:astring02
                                options:NSCaseInsensitiveSearch | NSNumericSearch] == NSOrderedSame;    
    NSLog(@"result:%d",result);
    

    三.用Swift语言比较

    1. "==":判断字符串是否相等

     

    let astring01 = "this is a String!";
    let astring02 = "This is a String!";
    print(astring01 == astring02)
    
    1. compare方法(compare返回的三种值)
    • ComparisonResult.orderedSame 判断两者内容是否相同

     

    let astring01 = "this is a String!";
    let astring02 = "This is a String!";
    print(astring01.compare(astring02) ==  ComparisonResult.orderedSame)
    
    • ComparisonResult.orderedAscending 判断两值的大小(按照字母顺序比较,后者大于前者为真)

     

    let astring01 = "this is a String!";
            let astring02 = "This is a String!";
            print(astring01.compare(astring02) ==  ComparisonResult.orderedAscending)
    
    • ComparisonResult.orderedDescending 判断两值的大小(按照字母顺序比较,前者大于后者为真)

     

    let astring01 = "this is a String!";
            let astring02 = "This is a String!";
            print(astring01.compare(astring02) ==  ComparisonResult.orderedDescending)
    
    • 调用 rawValue,根据 Int 类型的返回值判断三种情况
      1 : 表示后者大于前者
      0 :表示相等
      -1 :表示前者大于后者

     

    let astring01 = "this is a String!";
    let astring02 = "This is a String!";
    print(astring01.compare(astring02).rawValue)
    
    1. 不考虑大小写比较字符串
    • caseInsensitiveCompare方法:相当于全部转化成大写,或者全部转化成小写后,进行比较

     

    let astring01 = "this is a String!";
    let astring02 = "This is a String!";
    print(astring01.caseInsensitiveCompare(astring02).rawValue)
    
    • localizedCaseInsensitiveCompare方法:不考虑大小写,对字符串进行完全比较

     

    let astring01 = "this is a String!";
    let astring02 = "This is a String!?";
    print(astring01.localizedCaseInsensitiveCompare(astring02).rawValue)
    

    另外,非完全比较,可以自定义比较选择(options)和比较范围(range)

     

    let astring01 = "this is a String!";
    let astring02 = "This is a String!";
    astring01.compare(astring02, options: <String.CompareOptions>, range: <Range<String.Index>>, locale: <Locale>)


     

    展开全文
  • 字符串比较和相等判断

    万次阅读 2015-09-27 21:24:41
    判断字符串是否相等 首先不能用== 来判断,因为==判断的存储在这个字符串的对象的值,这样很容易出错,那么我们用isEqualToString来进行判断 int main(int argc, const char * argv[]) { NSString *str = @"jack"; ...
  • iOS: 如何判断字符串是否相等

    千次阅读 2016-02-15 22:20:29
    iOS 开发中, 有时需要判断两个字符串是否相等。 对于初学者来说, 由于概念不清楚,经常出现一些诡异的错误。 这里给出代码示例:  NSString *strA = [NSString stringWithFormat:@"a"];...
  • ios 字符串和数字互相转化

    千次阅读 2013-01-15 11:50:50
    字符串使用NSString定义成一用于保存字符串的对象变量,而数字则使用原始类型float、int定义成一变量,这是一原生态的变量。 这两种变量之间在开发时会需要相互转化。 下面是常用的转化方法: NSString *...
  • 一,效果图。...,代码。 - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. [self initTimerCompare]; } #pragma -mark -functions //比较时间
  • iOS 字符串和数字互相转化

    千次阅读 2014-12-18 14:13:59
    字符串使用NSString定义成一用于保存字符串的对象变量,而数字则使用原始类型float、int定义成一变量,这是一原生态的变量。 这两种变量之间在开发时会需要相互转化。 下面是常用的转化方法: NSString *...
  • 字符串常用方法—拼接字符串

    万次阅读 2015-09-27 20:44:38
    一般来说,我们习惯了使用stringWithFormat来拼接字符串,如下: int main(int argc, const char * argv[]) { NSString *name = @"jack"; int age = 20; NSString *str = [NSString stringWithFormat:@"我的名字%...
  • iOS开发过程中,会有一些为了提高APP的视觉效果而设置的特别一点的效果,比如一行文字需要自定义不同的颜色和文字大小,这就用到通过富文本来设置字符串的颜色、大小和文字类型。这篇博文我打算只介绍怎么设置指定...
  • NSString 判断相等

    千次阅读 2016-01-25 17:16:02
    判断 是否包含 ...是否相等 [str isEqualToString: @"山西省"] 有时候从数据库获取到的值 并不确定类型的话 isEqual判断 任何类型都可以 [str isEqual:@"d"]; 用习惯了 conta
  • iOS判断输入的字符是否都是中文

    千次阅读 2016-07-27 10:24:56
    //1、判断输入的字符串是否全是中文 -(BOOL)IsChinese:(NSString *)str {  NSInteger count = str.length;  NSInteger result = 0;  for(int i=0; i[str length];i++)  {  int a =
  • 在判断一个字符串类型的变量是否与某字符时相等,你可能写下这样一行代码 if (activityType == @"0"){} //activityType是某一变量名 然后你会得到这样一行黄色提醒 Fixing “direct comparison of a string ...
  • iOS客户端字符串中子字符串实现的代码: +(NSMutableAttributedString *)stringWithHighLightSubstring:(NSString *)totalString substring:(NSString *)substring{ NSMutableAttributedSt...
  • 第一种方式是使用NSScanner: 1. 整形判断 - (BOOL)isPureInt:(NSString *)string{ NSScanner* scan = [NSScanner scannerWithString:string];  int val;  return [scan scanInt:&val] && ...
  • ASCII,共7位,表示128个字符,一般都在前面加0补全8位形成一Bit。0~31以及127为控制字符,不能打印;32为空格;48(HEX: 0x30)为0;65(HEX: 0x41)为A;97(HEX: 0x61)为a。 GB2312:ANSI
  • ios动态获取nsstring字符串宽度

    万次阅读 2015-07-07 15:16:45
    在使用UILabel存放字符串时,经常需要获取label的长宽数据,本文列出了部分常用的计算方法。 1.获取宽度,获取字符串不折行单行显示时所需要的长度  CGSize titleSize = [aString sizeWithFont:font ...
  • IOS字符串转换为日期时间格式

    万次阅读 2012-12-29 23:27:29
    IOS字符串转换为日期时间格式  让技术开发讨论更纯粹!CocoaChina问答荣誉每周、每月龙虎榜! 1、如何如何将一个字符串如“ 20110826134106”装化为任意的日期时间格式,下面列举两种类型:  ...
  • IOS 将时间字符串转换为时间戳

    千次阅读 2015-09-19 14:27:22
    将时间戳转换为毫秒数 #pragma mark -- time convert method - (NSString *)convertSecondsToTime:(long long)time Format:(NSString*)dateFormat { // long long time=[timeStr longLongVal
1 2 3 4 5 ... 20
收藏数 42,044
精华内容 16,817
关键字:

2个字符串是否相等 ios