PHP の sscanf を使用して、ユーザーが送信した文を読み取り、そこからデータを取得しようとするのは適切でしょうか? 例えば:
ユーザー入力:
"James is child of Bill"
作りたいし$child="james"
、$parent="bill"
or:作り"Mary is the mother of kate"
たい$child="kate"
$parent="mary"
データを抽出しなければならない可能性のある他の文形式がかなりある可能性があります (100 程度以下)。
だから私は使用する必要があります:
$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";
}
? ご覧のとおり、私は少しマンネリになっています。誰かがそれを行うためのより良い方法、またはこのソリューションを機能させる方法を提案できますか?
心から感謝する!