本文整理汇总了C++中XML4NLP::LoadXMLFromString方法的典型用法代码示例。如果您正苦于以下问题:C++ XML4NLP::LoadXMLFromString方法的具体用法?C++ XML4NLP::LoadXMLFromString怎么用?C++ XML4NLP::LoadXMLFromString使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类XML4NLP
的用法示例。
在下文中一共展示了XML4NLP::LoadXMLFromString方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Service
static int Service(struct mg_connection *conn) {
char *sentence;
char type[10];
char xml[10];
char buffer[POST_LEN];
string str_post_data;
string str_type;
string str_xml;
const struct mg_request_info *ri = mg_get_request_info(conn);
if (!strcmp(ri->uri, "/ltp")) {
int len;
while((len = mg_read(conn, buffer, sizeof(buffer) - 1)) > 0){
buffer[len] = 0;
str_post_data += buffer;
}
TRACE_LOG("CDATA: %s", str_post_data.c_str());
TRACE_LOG("CDATA length: %d", str_post_data.size());
sentence = new char[str_post_data.size() + 1];
mg_get_var(str_post_data.c_str(),
str_post_data.size(),
"s",
sentence,
str_post_data.size());
mg_get_var(str_post_data.c_str(),
str_post_data.size(),
"t",
type,
sizeof(type) - 1);
mg_get_var(str_post_data.c_str(),
str_post_data.size(),
"x",
xml,
sizeof(xml) - 1);
// std::cerr << "sentence: " << sentence << std::endl;
// std::cerr << "type : " << type << std::endl;
// std::cerr << "xml : " << xml << std::endl;
// std::cerr << "validation check" << std::endl;
string strSentence = sentence;
/*
* validation check
*/
if (strlen(sentence) == 0 || !isclear(strSentence)) {
// std::cerr << "Failed validation check" << std::endl;
WARNING_LOG("Failed string validation check");
return 0;
}
if(strlen(type) == 0) {
str_type = "";
} else {
str_type = type;
}
if(strlen(xml) == 0) {
str_xml = "";
} else {
str_xml = xml;
}
delete []sentence;
TRACE_LOG("Input sentence is: %s", strSentence.c_str());
if(str_xml == "y"){
xml4nlp.LoadXMLFromString(strSentence);
} else {
xml4nlp.CreateDOMFromString(strSentence);
}
if(str_type == "ws"){
engine.wordseg();
} else if(str_type == "pos"){
engine.postag();
} else if(str_type == "ner"){
engine.ner();
} else if(str_type == "dp"){
engine.parser();
} else if(str_type == "srl"){
engine.srl();
} else {
engine.srl();
}
string strResult;
xml4nlp.SaveDOM(strResult);
strResult = "HTTP/1.1 200 OK\r\n\r\n" + strResult;
// cout << "Result is: " << strResult << endl;
//.........这里部分代码省略.........