У меня есть javascript chat bot, где человек может вводить в поле ввода любой вопрос, который им нравится, и надеется получить точный ответ. Я могу это сделать, но я знаю, что все это неправильно, потому что я не знаю, в какой позиции номер появится в предложении. Если человек точно набирает:Строка поиска для чисел
что такое квадратный корень из 5, это отлично работает.
Если он типа в таких вещах, это не так.
что квадратный корень из 5
квадратный корень из 5 является то, что
вы знаете, что квадратный корень из 5 является
и т.д.
мне нужно в состоянии определить, где номер появляется в предложении, тогда выполните расчет оттуда. Обратите внимание, что приведенная ниже строка является частью более крупного рабочего чата. В приведенной ниже строке я просто пытаюсь ответить на любой вопрос с квадратным корнем независимо от того, где число появляется в предложении. Я также знаю, что есть много подводных камней с открытым полем ввода, где человек может вводить что угодно, например, орфографические ошибки и т. Д. Это просто для развлечения не серьезный научный проект. :)
if(
(word[0]=="what's") &&
(word[1]=="the") &&
(word[2]=="square") &&
(word[3]=="root") &&
(word [4]=="of") &&
(input.search(/\d{1,10}/)!=-1) &&
(num_of_words==6)
){
var root= word[5];
if(root<0){
document.result.result.value = "The square root of a negative number is not possible.";
}else{
word[5] = Math.sqrt(root);
word[5] = Math.round(word[5]*100)/100
document.result.result.value = "The square root of "+ root +" is "+ word[5] +".";
}
return true;
}
Только для того, чтобы быть понятным, бот написан по мотивам «Если statemments» по причине. Если вход в этом случае не содержит слов «что» и «квадратный корень» и «некоторый номер», строка не запускается, и ответ на нее бот с общим «я не знаю типа ответ". Поэтому я надеюсь, что любой ответ будет соответствовать формату, который я использую. Будь добрым, я здесь новый. Мне нравится делать боты, но я не очень программист. Благодарю.
Ничего себе. Вы уверены, что ваши развлечения на высоких уровнях. :) –