में निहित फ़ाइल का विस्तार प्राप्त करें मेरे पास एक एनएसएमयूटेबल डिक्शनरी है जिसमें fileone.doc या filetwo.pdf के सरल रूप में फ़ाइल आईडी और उनके फ़ाइल नाम + एक्सटेंशन शामिल हैं। मुझे यह निर्धारित करने की ज़रूरत है कि मेरे UITableView में संबंधित आइकन को सही तरीके से प्रदर्शित करने के लिए किस प्रकार की फ़ाइल है। यहां तक कि मैंने अभी तक किया है।एनएसएसटींग
NSString *docInfo = [NSString stringWithFormat:@"%d", indexPath.row]; //Determine what cell we are formatting
NSString *fileType = [contentFiles objectForKey:docInfo]; //Store the file name in a string
मैं निर्धारित करने के लिए किस प्रकार की फ़ाइल मैं देख रहा हूँ दो regex लिखा था, लेकिन वे एक सकारात्मक परिणाम वापस कभी नहीं। मैंने पहले आईओएस प्रोग्रामिंग में रेगेक्स का उपयोग नहीं किया है, इसलिए मुझे पूरी तरह से यकीन नहीं है कि मैं इसे सही कर रहा हूं, लेकिन मैंने मूल रूप से कक्षा विवरण पृष्ठ से कोड कॉपी किया है।
NSError *error = NULL;
NSRegularExpression *regexPDF = [NSRegularExpression regularExpressionWithPattern:@"/^.*\\.pdf$/" options:NSRegularExpressionCaseInsensitive error:&error];
NSRegularExpression *regexDOC = [NSRegularExpression regularExpressionWithPattern:@"/^.*\\.(doc|docx)$/" options:NSRegularExpressionCaseInsensitive error:&error];
NSUInteger numMatch = [regexPDF numberOfMatchesInString:fileType options:0 range:NSMakeRange(0, [fileType length])];
NSLog(@"How many matches were found? %@", numMatch);
मेरे प्रश्न होंगे, क्या ऐसा करने का कोई आसान तरीका है? यदि नहीं, तो मेरा regex गलत है? और आखिर में अगर मुझे इसका इस्तेमाल करना है, तो क्या यह रन टाइम में महंगा है? मुझे नहीं पता कि उपयोगकर्ता के पास कितनी फाइलें होंगी।
धन्यवाद।
ओह, यह नहीं पता था कि एनएसएसटींग में 'पथ एक्सटेंशन' संपत्ति – remy
उद्देश्य-सी बस चीजों को इतना आसान बनाता है; मुझे ऐसे कठिन समाधानों के बारे में सोचना नहीं है! धन्यवाद डेविड। – TheJer
मुझे खुशी है कि मैंने कोशिश नहीं की और इस समारोह को स्वयं बना दिया – Will