gpt4 book ai didi

javascript - 在 swift 中将 HTML 字符串解析为 JSON

转载 作者:行者123 更新时间:2023-11-30 10:58:31 25 4
gpt4 key购买 nike

我正在使用 javascript 来使用 HTML 向 WKWebView 显示字符串

在我的 View Controller 中调用 Javascript 函数

myWebView.evaluateJavaScript("customMessageWithDictionary('\(self.jsonString)','\(strTestType)')") {
(id, error) in
print(error ?? "")
}

在 HTML 文件中

function customMessageWithDictionary(nameDetails,testType1) {

nameDetails = nameDetails.replace(/\\/g, '');
questionList = $.parseJSON(nameDetails);
var iterator=0
for (iterator = 0; iterator < questionList.length; iterator++)
questionList[iterator].UserGivenAnswerId= null;

questionObj = questionList[positionObj];
testType=testType1;

loadQuestions(true);
}

如果 jsonString 中有 HTML 标签,那么获取错误并且我的 Javascript 不会运行。所以 WKWebview 没有显示内容。

如果 HTML 标签在我的 jsonString 中,请给我解决方案,以便使用 HTML 字符串加载 javascript 函数。

最佳答案

 if let theJSONData = try?  JSONSerialization.data( withJSONObject: self.aryOfQuestionList,options: .prettyPrinted ),

let theJSONText = String(data: theJSONData,encoding: String.Encoding.ascii)
{
print("JSON string = \n\(theJSONText)")

self.jsonString = (theJSONText as AnyObject) as! String
}

let regex = try! NSRegularExpression(pattern: "(?<=<\\w{1,40})\\s[^>]+(?=>)", options: .caseInsensitive)
let range = NSMakeRange(0, self.jsonString.count)
let htmlWithoutInlineAttributes = regex.stringByReplacingMatches(in: self.jsonString, options: [], range: range, withTemplate: "")

print(htmlWithoutInlineAttributes)

关于javascript - 在 swift 中将 HTML 字符串解析为 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53668504/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com