如何在SQLite中替换字符串?
如何更新具有以下内容的表列:
/var/mobile/233KKFSDK3234/Documents/Page.jpg
并替换它
/Documents/Page.jpg
在SQLite?
注意:除/Documents/
之外的所有文本都是动态的。
您必须首先读取字符串并将其放入nsstring,然后从旧字符串生成新闻字符串,然后更新到db。
这里有生成新字符串的目标c代码。 您可以使用其他答案进行数据库更新。
NSString *originalString = @"/var/mobile/233KKFSDK3234/Documents/Page.jpg"; NSRange documentsRage = [originalString rangeOfString:@"/Documents/"]; NSString *newString = [NSString stringWithString:[originalString substringWithRange:NSMakeRange(documentsRage.location, [originalString length]-documentsRage.location)]]; NSLog(@"newString:%@",newString);
UPDATE table SET column = IF( POSITION('/Documents/' IN column), RIGHT(column, (LENGTH(column) - POSITION('/Documents/' IN column) - LENGTH('/Documents/') + 1)), column )
如果找到模式,只保留出现的字符; 否则,什么也不做(保持旧价值)。
以下为我工作:
更新yourtable SET yourfield = SUBSTR(yourfield,18);
.. Bjoern在这个问题上说: 如何使用SQL更新这些数据?
在ObjC中执行字符串处理,然后使用此查询。
update tablename set columnname = 'processedString' ;
根据您的要求更新