Objective c 如何将目标c转换为swift
我有一个零件代码目标c代码,我想转换成swift:Objective c 如何将目标c转换为swift,objective-c,swift,Objective C,Swift,我有一个零件代码目标c代码,我想转换成swift: NSString *rawStr = [[tokenField textField] text]; for (int i = 0; i < [rawStr length]; i++) { if (![charSet characterIsMember:[rawStr characterAtIndex:i]]) { [recipi
NSString *rawStr = [[tokenField textField] text];
for (int i = 0; i < [rawStr length]; i++)
{
if (![charSet characterIsMember:[rawStr characterAtIndex:i]])
{
[recipient appendFormat:@"%@",[NSString stringWithFormat:@"%c", [rawStr characterAtIndex:i]]];
}
}
if ([rawStr length])
{
[tokenField addTokenWithTitle:rawStr representedObject:recipient];
}
NSString*rawStr=[[tokenField textField]text];
对于(int i=0;i<[rawStr长度];i++)
{
if(![charSet characteristember:[rawStr characterAtIndex:i]]
{
[recipient appendFormat:@“%@”,[NSString stringWithFormat:@”%c“,[rawStr characterAtIndex:i]];
}
}
如果([rawStr长度])
{
[tokenField addTokenWithTitle:rawStr representedObject:recipient];
}
请指导我。如果您不介意使用
NSString
端口是直接的:
let rawStr:NSString = tokenField.textField.text
for i in 0..<rawStr.length {
let currentChar = rawStr.characterAtIndex(i)
if !charSet.characterIsMember(currentChar) {
recipient.appendFormat("%@", NSString(format:"%c", currentChar))
}
}
if rawStr.length > 0 {
tokenField.addTokenWithTitle(rawStr, representedObject:recipient)
}
让rawStr:NSString=tokenField.textField.text
因为我在0。。0 {
tokenField.addTokenWithTitle(rawStr,representedObject:recipient)
}
否则,
字符串
类没有长度方法。您必须使用s.startIndex.advancedBy
语法。看起来您试图保留不在字符集中的字符
func strRemoveCharsNotInSet(str: String) -> String {
let charSet = NSCharacterSet(charactersInString: ".@")
let temp = str.componentsSeparatedByCharactersInSet(charSet)
let backToString = temp.joinWithSeparator("")
return backToString
}
print(strRemoveChars("Hello@There.Friend"))
outputs:
HelloThereFriend
如果你否决了投票,至少要说明原因。