আইওএস-এ সাবস্ট্রিংগুলিতে স্ট্রিং কীভাবে বিভক্ত করবেন?


83

আমি NSStringসার্ভার থেকে একটি পেয়েছি । এখন আমি এটি আমার প্রয়োজন সাবস্ট্রিং মধ্যে বিভক্ত করতে চান। কিভাবে স্ট্রিং বিভক্ত?

উদাহরণ স্বরূপ:

সাবস্ট্রিং 1: দ্বিতীয় অক্ষর থেকে 5 তম অক্ষর পর্যন্ত পড়ুন

সাবস্ট্রিং 2: ষষ্ঠ অক্ষর থেকে 10 টি অক্ষর পড়ুন।


4
আপনার আইফোনের আইওএসে পরিবর্তন করা উচিত।
রিকার্ডো

উত্তর:


223

আপনি স্ট্রিং দ্বারা স্ট্রিংকে এনস্ট্রিংয়ের উপাদানগুলি সেপ্রেটেডবাইস্ট্রিং পদ্ধতি ব্যবহার করে বিভক্ত করতে পারেন ।

ডকুমেন্টেশন থেকে উদাহরণ:

NSString *list = @"Norman, Stanley, Fletcher";
NSArray *listItems = [list componentsSeparatedByString:@", "];

যার স্ট্রিংগুলির আলাদা চিহ্ন পৃথক পৃথক পৃথক করতে পারি? যেমন @ "এ, বি ^ সি ~ ডি"
চিলি ঝং

8
একাধিক অক্ষরে বিভক্ত হওয়ার জন্য আপনার এনএসএসআরটিংয়ের "উপাদানগুলি সেপ্রেটেডবাইচারারসইনসেট:" ব্যবহার করতে সক্ষম হওয়া উচিত।
কোডেলজিক

হ্যালো আমি সাফল্যের সাথে স্ট্রিং পৃথক করেছিলাম তবে আমি কি ইউআইএলবেলে আলাদা করে কোনও ধারণা সেট করতে চাই?
নিকুঞ্জ যাদব

আপনার অ্যারের মাধ্যমে আইট্রেট করুন: (int i = 0; i <[listItems গণনা]; i++) এর জন্য এবং [listItems অবজেক্টএটিআইডেক্স: i] ব্যবহার করুন;
আধিপত্য

ধন্যবাদ! `;:` NSArray * listItems = [[NSCharacterSet whitespaceCharacterSet] তালিকাতে componentsSeparatedByCharactersInSet:] আমি একটু ভিন্ন করা
innuendoreplay

39

এনএসএসস্ট্রিং এর জন্য কয়েকটি পদ্ধতি রয়েছে:

[myString substringToIndex:index];
[myString substringFromIndex:index];
[myString substringWithRange:range];

আরও তথ্যের জন্য এনএসএসস্ট্রিংয়ের জন্য ডকুমেন্টেশন চেক করুন।


1

আমি একটি নির্দিষ্ট পরিমাণে অংশগুলিতে স্ট্রিংগুলি বিভক্ত করার জন্য একটি সামান্য পদ্ধতি লিখেছি। মনে রাখবেন এটি কেবল একক বিভাজক অক্ষরকে সমর্থন করে। তবে আমি মনে করি এটি কোনও এনএসএসস্ট্রিংকে বিভক্ত করার একটি কার্যকর উপায়।

//split string into given number of parts
-(NSArray*)splitString:(NSString*)string withDelimiter:(NSString*)delimiter inParts:(int)parts{
    NSMutableArray* array = [NSMutableArray array];

    NSUInteger len = [string length];
    unichar buffer[len+1];

    //put separator in buffer
    unichar separator[1];
    [delimiter getCharacters:separator range:NSMakeRange(0, 1)];

    [string getCharacters:buffer range:NSMakeRange(0, len)];

    int startPosition = 0;
    int length = 0;
    for(int i = 0; i < len; i++) {

        //if array is parts-1 and the character was found add it to array
        if (buffer[i]==separator[0] && array.count < parts-1) {
            if (length>0) {
                [array addObject:[string substringWithRange:NSMakeRange(startPosition, length)]];

            }

            startPosition += length+1;
            length = 0;

            if (array.count >= parts-1) {
                break;
            }

        }else{
            length++;
        }

    }

    //add the last part of the string to the array
    [array addObject:[string substringFromIndex:startPosition]];

    return array;
}
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.