Tag: string

string中的奇怪的不可见的字符导致NSURL失败

我有一个string到数字的问题,需要我几天的时间来解决。 所以这一切都开始在我的应用程序,涉及从地址簿中拨打电话号码和拨打电话。 一切工作正常,直到我注意到一些电话号码导致我的程序崩溃。 过了一段时间,我终于意识到,他们正在崩溃的电话号码有一个空间,这终于明白了,因为即使它是一个电话号码,我使用NSURL来调用“tel://(555)5555555 “之间有一个空格将使网站无效,这是导致我的程序崩溃。 现在我很高兴我想出了第二个问题,并决定做一个简单的字符replace,用“ – ”replace所有的空格。 这工作testingstring我testing它,一切看起来不错。 我决定把这个备份到我的代码,然后我的程序仍然崩溃。 然后,我做了一些debugging,发现即使我的testing用例工作,我从iOS地址簿拉的电话号码没有被replace的空白。 似乎无论用什么字符来隔开电话号码都不是一个空格,或者至less不是一个空格,我可以简单地键入这样的 – >“” 任何想法如何解决这个问题? 要么(1)知道这个看不见的字符是什么,取而代之或(2)有没有办法只提取一个电话号码作为所有的数字,而不是额外的字符“+(。) – ”或在这里的任何选项?

Swift – 将数组中的值转换为double或float

我有一个数组是string的值(但所有的string是像1.0,2.0等值)。 我试图将这些string转换成双打或浮动,所以我可以将它们加在一起。 我如何迅速做到这一点?

在iOS(不是OS X)版本中具有相同值的NSString哈希?

NSString hash (甚至iOS文档 )的文档包含这个指令: 您不应该在OS X的发行版中依赖此属性具有相同的散列值。 我们是否知道该属性是否可以假设在iOS版本(而不是OS X)上具有相同的价值? 我们知道为什么OS X可能会有所不同吗? (例如,这是否允许苹果在某个时刻从MD5切换到另一个哈希函数?)

将UInt32(UTF-32)转换为Swift中的string

我有一个UInt32值的数组。 我想将这个数组转换为一个String 。 这不起作用: let myUInt32Array: [UInt32] = [72, 101, 108, 108, 111, 128049] let myString = String(myUInt32Array) // error let myString = String(stringInterpolationSegment: myUInt32Array) // [72, 101, 108, 108, 111, 128049] (not what I want) 这些SOpost显示UTF8和UTF16 : 我怎样才能在Swift中从UTF8创build一个string? 有没有办法在swift中从utf16数组创build一个string?

检测数组中的string对象是否与任何命令相匹配

请耐心等待,阅读我目前的情况。 我的问题在下面。 我的应用程序需要语音input,并成功地将单词匹配在一起形成一个单词或一组单词 – 称为短语; 无论是name , action , pet还是time 。 我有一个允许的短语的主列表,并存储在各自的数组中。 所以我有以下数组validNamesArray , validActionsArray , validPetsArray和validTimeFramesArray 。 每当用户停止说话时,都会返回一组新的短语。 NSArray *phrasesBeingFedIn = @[@"CHARLIE", @"EAT", @"AT TEN O CLOCK", @"CAT", @"DOG", "URINATE", @"CHILDREN", @"ITS TIME TO", @"PLAY"]; 知道它可以有以下组合创build一个命令: COMMAND 1: NAME + ACTION + TIME FRAME COMMAND 2: PET + ACTION COMMAND n: n + n, […]

如何通过标题的第一个字母来创build字典,但忽略“the”或“a / an”等文章

我想按我的表格视图中媒体项目的标题对数据进行sorting,但是我想按照第一个“实际”字母sorting,而不用“the”或“an” 一首民谣 红胡子海盗的民谣 黑胡子海盗的民谣 钢球 我尝试了下面的解决scheme: extension String { func firstLetter() -> Character{ var tmp = self.lowercased() if tmp.hasPrefix("the "){ tmp = String(tmp.characters.dropFirst(4)) }else if tmp.hasPrefix("a "){ tmp = String(tmp.characters.dropFirst(2)) }else if tmp.hasPrefix("an "){ tmp = String(tmp.characters.dropFirst(3)) } let hmm = "aąbcćdeęfghijklmnoópqrsśtuvwxyzżź0123456789" let letters = Array(hmm.characters) for index in characters.indices{ if letters.contains(tmp[index]){ return tmp[index] } […]

数组中string的UISearchBar

我正在尝试创build一个带有节标题,标题文本和字幕文本的字典types的应用程序。 我设法让一切工作使用下面的代码。 唯一我无法弄清楚的是如何过滤UISearchBar来显示数组中的string[Coptic]的结果。 这甚至可能是我组织一切的方式,还是我需要重组? 有没有人有什么build议? 我遗漏了底部的updateSearchResults空白代码,因为我不知道该编码什么。 class Gamma: UITableViewController, UISearchBarDelegate, UISearchResultsUpdating { struct words { var sectionName : String! var coptic : [String]! var english : [String]! } var array = [words]() var filtered = [words]() var filtered2 = UITableViewController() var indexarray = ["Ga", "Ge", "Gy", "Gn", "Go", "Gr", "Gw"] let searchController = UISearchController(searchResultsController: nil) […]

NSString中的指数

是否有可能在将显示在UITextField和UILabel NSString对象的指数? 如果是这样,我们该怎么做? 如果没有,你可能会build议任何替代scheme?

NSDateFormatter不适用于Twitterdate

我想格式化一个date,我从twitter使用STTwitter图书馆。 但是我迄今为止尝试过的代码没有工作。 从twitter获取date的代码: NSString *dateString = [status valueForKey:@"created_at"]; 这会返回制作推文的时间,date,时区和年份,看起来很乱。 我试着使用下面的代码来转换这个,使之更整洁: NSDateFormatter *dateFormatter =[[NSDateFormatter alloc]init]; [dateFormatter setDateFormat:@"MMddHHmm"]; NSDate *dateFromString = [dateFormatter dateFromString:dateString]; NSLog(@"%@", dateFromString); dateFormatter =[[NSDateFormatter alloc]init]; [dateFormatter setDateFormat:@"dd MMMM' at 'hhmm a"]; NSString *mydate=[dateFormatter stringFromDate:dateFromString]; 然后尝试将结果放在文本标签中: cell.detailTextLabel.text = my date; 我已经尝试了许多不同的date格式化的变体,但没有工作,我不知道为什么。 谢谢你的帮助 :)

如何将CoreLocation坐标转换为string?

func locationManager(manager: CLLocationManager!, didUpdateLocations locations: [AnyObject]!) { var user_lat = manager.location.coordinate.latitude var user_long = manager.location.coordinate.longitude self.locationManager.stopUpdatingLocation() } 我试过String(manager.location.coordinate.latitude)但似乎并没有工作。