string কিভাবে আমি একটি স্ট্রিং থেকে সব নেতৃস্থানীয় স্পেস অপসারণ করা উচিত?-দ্রুত




swift (16)

আমি একটি স্থান যা একটি স্ট্রিং থেকে প্রথম চরিত্র মুছে ফেলার জন্য একটি উপায় প্রয়োজন। আমি একটি স্ট্রিং টাইপের জন্য একটি পদ্ধতি বা এমনকি একটি এক্সটেনশান খুঁজছেন যা আমি একটি স্ট্রিং একটি অক্ষর কাটাতে ব্যবহার করতে পারেন।


দ্রুত 3.0 জন্য

import Foundation

var str = " Hear me calling"

extension String {
    var stringByRemovingWhitespaces: String {
        return components(separatedBy: .whitespaces).joined()
    }
}

str.stringByRemovingWhitespaces  // Hearmecalling

class SpaceRemover
{
    func SpaceRemover(str :String)->String
    {
        var array = Array(str)
        var i = array.count
        while(array.last == " ")
        {
            var array1 = [Character]()
            for item in  0...i - 1
            {
                array1.append(array[item])
            }
            i = i - 1
            array = array1
            print(array1)
            print(array)

        }

        var arraySecond = array
        var j = arraySecond.count

        while(arraySecond.first == " ")
        {
            var array2 = [Character]()
            if j > 1
            {
                for item in 1..<j
                {
                    array2.append(arraySecond[item])
                }
            }
            j = j - 1
            arraySecond = array2
            print(array2)
            print(arraySecond)

        }
        print(arraySecond)
        return String(arraySecond)
    }
}

নেতৃস্থানীয় এবং পিছনে হোয়াইটস্পেস অপসারণ করতে:

let trimmedString = string.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceCharacterSet())

সুইফ্ট 3 / সুইফ্ট 4:

let trimmedString = string.trimmingCharacters(in: .whitespaces)

extension String {

    var removingWhitespaceAndNewLines: String {
        return removing(.whitespacesAndNewlines)
    }

    func removing(_ forbiddenCharacters: CharacterSet) -> String {
        return String(unicodeScalars.filter({ !forbiddenCharacters.contains($0) }))
    }
}

যদি আপনি ফ্রন্ট (এবং পিছন) থেকে মধ্যম নয় তবে স্পেসগুলি সরাতে চান তবে আপনাকে stringByTrimmingCharactersInSet ব্যবহার করতে হবে

    let dirtyString   = " First Word "
    let cleanString = dirtyString.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceCharacterSet())

যদি আপনি স্ট্রিংয়ের যেকোনো স্থান থেকে স্পেসগুলি সরাতে চান, তবে আপনি স্ট্রিং বাই রিপ্লেসিং এ দেখতে চাইতে পারেন ...


আমি এই এক্সটেনশানটি ব্যবহার করতে চাই, নমনীয় হতে এবং অন্যান্য সংগ্রহগুলি কীভাবে করে তা অনুকরণ করে:

extension String {
    func filter(pred: Character -> Bool) -> String {
        var res = String()
        for c in self.characters {
            if pred(c) {
                res.append(c)
            }
        }
        return res
    }
}

"this is a String".filter { $0 != Character(" ") } // "thisisaString"

ব্যাডমিন্টনক্যাট এর উত্তর 3 এর সুইফ্ট

extension String {
    func replace(_ string:String, replacement:String) -> String {
        return self.replacingOccurrences(of: string, with: replacement, options: NSString.CompareOptions.literal, range: nil)
    }

    func removeWhitespace() -> String {
        return self.replace(" ", replacement: "")
    }
}

সুইফট 3.0+ অন্যান্য উত্তর দেখতে। এই এখন Swift 2.x জন্য একটি উত্তরাধিকার উত্তর

উপরে উত্তর দেওয়া হয়েছে, যেহেতু আপনি প্রথম চরিত্রটি মুছে ফেলতে আগ্রহী হন। স্ট্রিংবিট্রিমিংচার্কারস ইনসেট () উদাহরণ পদ্ধতিটি চমত্কারভাবে কাজ করবে:

myString.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceCharacterSet())

আপনি নিজের স্ট্রিংগুলির সীমানা ট্রিম করতে নিজের অক্ষর সেটগুলিও তৈরি করতে পারেন, যেমন:

myString.stringByTrimmingCharactersInSet(NSCharacterSet(charactersInString: "<>"))

StringByReplacingOccurrencesOfString (লক্ষ্য: স্ট্রিং, প্রতিস্থাপন: স্ট্রিং) নামক সাবস্ট্রিংসগুলি সরানোর বা প্রতিস্থাপন করার সাথে মোকাবিলা করার ক্ষেত্রে উদাহরণে একটি অন্তর্নির্মিত পদ্ধতি রয়েছে। এটি আপনার স্ট্রিং যে কোন জায়গায় ঘটতে স্পেস বা অন্য কোন নিদর্শন মুছে ফেলতে পারেন

আপনি বিকল্প এবং রেঞ্জ নির্দিষ্ট করতে পারেন, তবে এর প্রয়োজন নেই:

myString.stringByReplacingOccurrencesOfString(" ", withString: "")

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

 myString.stringByReplacingOccurrencesOfString(" ", withString: "").stringByReplacingOccurrencesOfString(",", withString: "")

... কিন্তু এটা দ্বিগুণ লাগবে।

অ্যাপল সাইট থেকে .stringByReplacingOccurrencesOfString () ডকুমেন্টেশন

এই স্ট্রিং ইনস্ট্যান্স পদ্ধতিগুলি চেনানো কখনও কখনও রূপান্তর বন্ধের জন্য খুব সুবিধাজনক হতে পারে, উদাহরণস্বরূপ, যদি আপনি একটি ছোট এনএসডিটা ব্লোকে এক লাইনের ব্যবধান ছাড়াই হেক্স স্ট্রিং রূপে রূপান্তর করতে চান তবে আপনি সুইফ্টের স্ট্রিং ইন্টারপোলেশন এবং কিছু টিমিংয়ের সাথে এটি করতে পারেন। প্রতিস্থাপন:

("\(myNSDataBlob)").stringByTrimmingCharactersInSet(NSCharacterSet(charactersInString: "<>")).stringByReplacingOccurrencesOfString(" ", withString: "")

সুইফ্ট মধ্যে সাদা স্পেস ছাঁটাই 4

let strFirstName = txtFirstName.text?.trimmingCharacters(in: 
 CharacterSet.whitespaces)

সুইফ্ট 4

Regex ব্যবহার করার জন্য চমৎকার ক্ষেত্রে:

" this is    wrong contained teee xt     "
    .replacingOccurrences(of: "^\\s+|\\s+|\\s+$", 
                          with: "", 
                          options: .regularExpression)

// thisiswrongcontainedteeext

আমার জন্য, নিচের লাইন সাদা স্থান মুছে ফেলার জন্য ব্যবহৃত।

let result = String(yourString.filter {![" ", "\t", "\n"].contains($0)})

সাদা স্পেস অপসারণ করার জন্য কার্যকরী প্রোগ্রামিং চেষ্টা করুন:

extension String {
  func whiteSpacesRemoved() -> String {
    return self.filter { $0 != Character(" ") }
  }
}

সুইফ্ট 3

আপনি কেবল স্ট্রিংয়ের সব স্বাভাবিক স্পেসগুলি সরাতে এই পদ্ধতিটি ব্যবহার করতে পারেন (সব ধরণের হোয়াইট স্পেস বিবেচনা করে না):

let myString = " Hello World ! "
let formattedString = myString.replacingOccurrences(of: " ", with: "")

ফলাফল হবে:

HelloWorld!

আপনি পাশাপাশি এই চেষ্টা করতে পারেন

   let updatedString = searchedText?.stringByReplacingOccurrencesOfString(" ", withString: "-")

সুইফ্ট 3 সংস্করণ

  //This function trim only white space:
   func trim() -> String
        {
            return self.trimmingCharacters(in: CharacterSet.whitespaces)
        }
    //This function trim whitespeaces and new line that you enter:
     func trimWhiteSpaceAndNewLine() -> String
        {
            return self.trimmingCharacters(in: CharacterSet.whitespacesAndNewlines)
        }

আপনি regex ব্যবহার করতে পারেন।

let trimmedString = myString.stringByReplacingOccurrencesOfString("\\s", withString: "", options: NSStringCompareOptions.RegularExpressionSearch, range: nil)




swift