我在我的xCode项目中嵌入了一个HTML,其中包含标记,例如:
{描述}
{位置]
{TIME_SUBMITTED}
我将文件的内容加载到一个字符串中,其中包含:
let url = Bundle.main.url(forResource: "emailTemplate", withExtension: "html")
var messageBody:NSString!
do { messageBody = try String(contentsOf: url!) as NSString! }
catch { messageBody = "" }现在我已经填充了"messageBody“,我需要找到并替换基于UI的标记,例如:
1)查找"{DESCRIPTION}“并将其替换为lblDescription.text
2)查找"{LOCATION}“并将其替换为lblLocation.text
我试图使用类似于:
messageBody.enumerateSubstrings(in: NSMakeRange(0, messageBody.length), options: .byWords) { (substring, substringRange, enclosingRange, _) -> () in
print(substring!)
}但是,对于regex,我是完全无用的,如果子字符串等于一个标记,我可以使用一些帮助来查找和替换。有什么想法吗?
发布于 2016-11-23 21:44:08
你不需要regex做这个。重复调用replacingOccurrences就可以了:
import Foundation
let emailTemplate = "Hello {USER}\n" +
"{DESCRIPTION}\n" +
"\n" +
"Regards."
let email = emailTemplate
.replacingOccurrences(of: "{USER}", with: "John Smith")
.replacingOccurrences(of: "{DESCRIPTION}", with: "Have a nice day")
print(email)https://stackoverflow.com/questions/40774500
复制相似问题