Swift 5.X——String


1.基本操作

  注意:索引(Int)不能直接用,需要轉為str.index(這里的“str”指的是字符串的名稱)

import UIKit

var str = "ABCD E"

print(str.count)//6。打印字符串的長度

var a = str.startIndex//索引
print(str[a])//A。打印str首個字符

var b = str.index(before: str.endIndex)//索引
print(str[b])//E。打印str末尾字符。endIndex的前一個字符才是“E”

var c = str.index(str.startIndex,offsetBy: 3)//索引
print(str[c])//D。從首個字符0起算3個字符

var d = str.index(str.endIndex,offsetBy: -3)//索引
print(str[d])//D。打印倒數第3個字符

var e = str.index(str.startIndex,offsetBy: 1)//區間起始索引
var f = str.index(str.startIndex,offsetBy: 3)//區間結束索引
print(str[e...f])//BCD。

var g = str.firstIndex(of: "C") ?? str.endIndex//字符"C"不一定存在,所以是可選的。如果"C"不存在就返回最后一個字符
print(str[str.startIndex...g])//ABC

print(str.prefix(3))//ABC。返回字符串的前3個字符。prefix:前綴

2.遍歷字符串

import UIKit

var str = "ABCDEF"

for index in str{
    print(index)//ABCDEF
}

for index in 0..<str.count{
    print(str[str.index(str.startIndex, offsetBy: index)])//ABCDEF
}  

3.多行文本

import UIKit

var str = """
            fghj
                567yijo
            gvhbj
            
            """
print(str)//注意引號里的內容是最“邊緣”的情況,即內容不能再向左寫了

print(#""hello\(world)""#)//"hello\(world)"。最邊緣的一對引號是為了符合語法,再往里的引號就屬於文本的內容了,想怎么寫就怎么寫

4.其它操作

import UIKit

var str = "ABCDEF"

print(str.contains("CD"))//true。字符串匹配

print(String(str.hasPrefix("AB")))//true。判斷字符串的前綴是否為“AB”
print(String(str.hasSuffix("F")))//true。判斷字符串的后綴是否為“F”

str.append("GHI")//擴展字符串
print(str)//ABCDEFGHI

str.insert(contentsOf:"hello", at: str.startIndex)// 插入字符串
print(str)//helloABCDEFGHI
str.insert(contentsOf: "world", at: str.index(str.startIndex, offsetBy: 10))//插入字符串
print(str)//helloABCDEworldFGHI

var a = str.index(str.startIndex,offsetBy: 5)
var b = str.index(str.startIndex,offsetBy: 9)
var range = a...b
str.replaceSubrange(range, with: "HELLO")//字符串的替換
print(str)//helloHELLOworldFGHI

print(str.replacingOccurrences(of: "hello", with: "123"))//123HELLOworldFGHI。字符串的替換

str.remove(at: str.index(str.startIndex, offsetBy: 5))//刪除字符
print(str)//helloELLOworldFGHI。

str.removeSubrange((str.index(str.startIndex,offsetBy: 0)...str.index(str.startIndex,offsetBy: 5)))//刪除字符串
print(str)//LLOworldFGHI

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM