使用PHP的sscanf读取用户提交的句子并尝试从中获取数据是否合适?例如:
用户输入:
"James is child of Bill"
我希望$child="james"
和$parent="bill"
或:"Mary is the mother of kate"
我希望$child="kate"
和$parent="mary"
我可能需要提取其他可能的句子格式(不超过100-ish)。
我应该使用:
$templates = array("%s is a child of %s","%s is the mother of %s");
$i=0;
$max = count($templates);
while( ($test == -1) && (i < $max) ) {
$test = sscanf($userInput, $templates[i]);
$i++;
}
if(i < $max) {
sscanf($userInput, $templates[i],$child,&parent);//hmm, what if $child,&parent should be the other way around?
} else {
echo "template not found for sentence";
}
?所以我可以看到一点,你能看到一个更好的方法,或者让这个解决方案有效的方法吗?
真的很感激!
答案 0 :(得分:0)
欢迎来到图论区域。我不认为你可以用句子模板解决你的问题。幸运的是,这里讨论了类似的主题。有关该讨论,请参阅此主题How to Model Real-World Relationships in a Graph Database (like Neo4j)?