OC3_字符串分割

//
//  main.m
//  OC3_字符串分割
//
//  Created by zhangxueming on 15/6/11.
//  Copyright (c) 2015年 zhangxueming. All rights reserved.
//

#import <Foundation/Foundation.h>
/*2.对称字符串
 传入一个字符串,将这个字符串组合成一个新的对称字符串返回
 例如:
 传入:@"I love you Mery"
 返回:@"I love you Mery Mery you love I"
 */

//2, 字符串分割 @“I #am Prime  # # #Optimus”
//字符串分割函数  按照 @" #"字符串整体分割

//3有两个字符串@"I am a good girl hello world";@"You are a bad boy"; 将这两个字符串单词,交叠,形成新的字符串 @"I You am are a a good bad girl boy"
int main(int argc, const char * argv[]) {
    @autoreleasepool {
#if 0
        //以传入的字符串整体分割字符串
        //- (NSArray *)componentsSeparatedByString:(NSString *)separator;
        NSArray *array = [@"I love you Mery" componentsSeparatedByString:@" "];
//        NSMutableArray *mulArray = [NSMutableArray arrayWithArray:array];
//        [mulArray removeObject:@""];
//        NSLog(@"mulArray = %@", mulArray);
        NSArray *dstArray = [NSArray arrayWithArray:array];
        for (NSInteger i=[array count]-1; i>=0; i--) {
            dstArray = [dstArray arrayByAddingObject:[array objectAtIndex:i]];
        }
        NSString *dstString =[dstArray componentsJoinedByString:@" "];
        NSLog(@"dstString = %@", dstString);
#endif
#if 0
        //以字符串整体进行分割
        NSArray *array = [@"I #am Prime  # # #Optimus" componentsSeparatedByString:@" #"];
        NSLog(@"array = %@", array);
        //以字符集进行分割
        NSArray *array2 = [@"I #am Prime  # # #Optimus" componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@" #"]];
        NSLog(@"array2 = %@", array2);
#endif
        char str1[100]={};
        char str2[100]={};
        scanf("%[^\n]\n%[^\n]",str1,str2);
        //NSLog(@"%s\n%s", str1, str2);
        NSString *string1 = [NSString stringWithUTF8String:str1];
        NSString *string2 = [NSString stringWithUTF8String:str2];
        NSArray *array1 = [string1 componentsSeparatedByString:@" "];
        NSArray *array2 = [string2 componentsSeparatedByString:@" "];
        NSUInteger len1 = [array1 count];
        NSUInteger len2 = [array2 count];

        NSArray *dstArray = [NSArray array];
        NSUInteger len = len1>len2?len2:len1;
        for (NSInteger i=0; i<len; i++) {
            dstArray = [dstArray arrayByAddingObject:[array1 objectAtIndex:i]];
            dstArray = [dstArray arrayByAddingObject:[array2 objectAtIndex:i]];
        }

        NSArray *subArray =len1>len2?[array1 subarrayWithRange:NSMakeRange(len, len1-len)]:[array2 subarrayWithRange:NSMakeRange(len, len2-len)];
        dstArray = [dstArray arrayByAddingObjectsFromArray:subArray];
        NSString *dstString = [dstArray componentsJoinedByString:@" "];
        NSLog(@"dstString = %@", dstString);
    }
    return 0;
}
时间: 2024-08-07 18:59:31

OC3_字符串分割的相关文章

C++ 字符串分割

2017-06-26 21:47:06 这几天在做大数据的处理,需要处理几百万的数据.由于一直用的是c++,所以就直接用c++进行了编码. 不过后来经过学长的提醒发现其实字符串处理,尤其是处理csv文件(由逗号作为分割符)时,需要将各个部分分割开来,如果用Java或者Python进行处理的话会非常方便,比如Java就有split函数进行字符串的分割,不过我在查询资料之后发现c++中并没有现成的针对string的字符串分割函数.于是我自己写了一个split函数. 这个函数的声明是 void spl

C/C++ 字符串分割: strtok 与 strsep 函数说明

函数原型: char *strtok(char *s, const char *delim); char *strsep(char **s, const char *delim); 功能:strtok和strsep两个函数的功能都是用来分解字符串为一组字符串.s为要分解的字符串,delim为分隔符字符串. 返回值:从s开头开始的一个个子串,当没有分割的子串时返回NULL. 相同点:两者都会改变源字符串,想要避免,可以使用strdupa(由allocate函数实现)或strdup(由malloc函

Matlab实现字符串分割

Matlab实现字符串分割(split) Matlab的字符串处理没有C#强大,本身又没有提供OO特性,需要依赖别的手段完成这项任务. 我们在这里借助正则表达式函数regexp的split模式.一般语法: S = regexp(str, char, 'split') 其中str是待分割的字符串,char是作为分隔符的字符(可以使用正则表达式).分割出的结果存在S中. 以下面这样一串字符为例 Hello Nocturne Studio 首先去除首尾的多余空格: str = deblank(str)

strtok():“字符串分割”实用函数

最近一直纠结于一个十分简单的问题:如何将一个字符串按标志分割开来?提出这个问题的初衷是自己在处理一个将命令行字符串转换为argc,argv格式的问题. 尝试了很多种方法,最后觉得利用strtok()函数来实现是一个比较好的方法.首先进行strtok()函数的介绍. char *strtok(string, control);  --- Tokenize string with delimiter in control. --- 通过分割符控制将字符串切片化. Purpose: strtok co

php 字符串分割函数split

说明 array split    ( string $pattern   , string $string   [, int $limit  ] ) 本函数返回一个字符串数组,每个单元为   string 经区分大小写的正则表达式   pattern 作为边界分割出的子串.如果设定了   limit,则返回的数组最多包含   limit 个单元,而其中最后一个单元包含了   string 中剩余的所有部分.如果出错,则   split() 返回 FALSE. Example #1 split(

JavaScript基础 split(&quot;&quot;) 将字符串分割成字符数组

镇场诗: 清心感悟智慧语,不着世间名与利.学水处下纳百川,舍尽贡高我慢意. 学有小成返哺根,愿铸一良心博客.诚心于此写经验,愿见文者得启发.------------------------------------------ code: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=ut

将中文字符串分割为数组 解决str_split中文乱码php

首先来介绍str_split()这个函数: 它的作用是将字符串分割为数组: 例如: $str='abcde';str_plite($str); 打印结果如下:Array(    [0] => a    [1] => b    [2] => c    [3] => d    [4] => e) 看似很好用的样子:但是作为中国程序员:不可避免的要和中文打交道: 这时候再用str_splite就会悲剧的发现乱码了::: 不要怕:preg_splite可以拯救这个问题: 当然是需要配

oracle | 字符串分割函数

/** * 字符串分割函数. * @param P_STR 待分割的字符串 * @param 分隔符 * @return 自定义table类型TY_STR_SPLIT. * 使用方法 select column_value from table(fn_split('1,2',',')) * @Author: xDer */ CREATE OR REPLACE FUNCTION FN_SPLIT(P_STR IN VARCHAR2, P_DELIMITER IN VARCHAR2) RETURN

mysql字符串分割函数

由于工作需要需要处理一些以逗号分隔的字符串,每次都要现做很是麻烦,网上找了很多都没有现成的,好吧,自己动手写一个好了 1 CREATE DEFINER = `harri`@`%` FUNCTION `substr_for_str`(`num` int, `str` varchar(5000)) 2 RETURNS varchar(100) 3 BEGIN 4 /*函数功能: 把带逗号的字符串分割取出 5 参数: num 要取出的字符串的索引值, 以0开始 6 str 以逗号分割的字符串 7 扩展