【发布时间】:2015-09-27 08:44:03
【问题描述】:
我想在 DNA 序列(字符串)中将所有 CG 字母对设为红色。我可以通过使用 NSMutableAttributedString 来做到这一点。 为此,我需要所有 CG 位置的 NSRange,并且我尝试在下面创建函数,但在
indexesOfStringIn = (stringOut as NSString).rangeOfString(stringIn, options: 0, range: rangeForIndexStringIn)
rangeOfString 不能使用类型参数列表(字符串,选项:Int,范围:NSRange)调用。哪里出错了?我做错了什么?
func searchForNSRangesOfStringInString(stringOut: String, stringIn: String) -> [NSRange]
{
var arrayOfindexesOfStringIn = [NSRange]()
if stringIn.characters.count > 1
{
var rangeNS = (stringOut as NSString).rangeOfString(stringIn)
if rangeNS.location != NSNotFound
{
let endIndexOfStringOut = (stringOut as NSString).length - 1
var indexesOfStringIn = (stringOut as NSString).rangeOfString(stringIn)
arrayOfindexesOfStringIn = [indexesOfStringIn]
var lastIndexOfStringIn = (stringOut as NSString).rangeOfString(stringIn).location
var rangeForIndexStringIn = NSRange(lastIndexOfStringIn...endIndexOfStringOut)
while indexesOfStringIn.location != NSNotFound
{
indexesOfStringIn = (stringOut as NSString).rangeOfString(stringIn, options: 0, range: rangeForIndexStringIn)
if indexesOfStringIn.location != NSNotFound
{
arrayOfindexesOfStringIn.append(indexesOfStringIn)
lastIndexOfStringIn = (stringOut as NSString).rangeOfString(stringIn, options: 0, range: rangeForIndexStringIn).location
rangeForIndexStringIn = NSRange(lastIndexOfStringIn...endIndexOfStringOut)
}
}
}
}
return arrayOfindexesOfStringIn
}
【问题讨论】:
-
只需使用 NSRegularExpression
-
好的,但是我的代码有什么错误?可能这很简单,但我被卡住了。