swift中字符串中子字符串的位置問題

1.需求:獲取String字符串中子字符串的位置,根據返回的index來判斷子字符串是否在字符串中,在的話,用index對字符串進行分割。

2.問題:java的童鞋會知道,String 的 indexOf  方法能返回子字符串的開始字符位置,如不存在,則返回-1,然兒在swift中並非如此。

 var str:NSString = s asNSString
 var index:Int  = str.rangeOfString("-BANK").location()

當子字符串確實存在於字符串中時,index返回的是位置,這點與java相同,但是當不存在時,返回的卻是這樣一個數字:

9223372036854775807

查閱資料發現,這是因爲 9223372036854775807 其實被定義爲一個常量 NSNotFound,這個常量可以直接使用,因此,要判斷字符串中是否存在該子字符串,應該寫成這樣:

 if(index ==NSNotFound){

 }else{

 }

以上。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章