Pobierz otwarty kod źródłowy bota Libre ogólny wydanie i zainstaluj bota Libre na własny serwer
Self, AIML, and scripting

star (parameter with space or dash)

w Schrader wysłany Mar 22 2018, 10:58

Hi, I have a pattern with 3 stars, pattern "* * *" template relearn();

then I can read sigle parameters by using:

var brand = sentence.get(#word, 0);
var series = sentence.get(#word, 1);
var year = sentence.get(#word, 2);

but one of the parameter can have space for example par1 par2 par 3

so the words become 4 becose a space.

I have to read 3 parameters from the 3 starts

How can I solve this situation ? 

 

Also if the user input 1par 2-par 3par, the second parameter is ignored I mean in #word1 I find obly 2 and not 2-par

 

 Thanks in advance


by admin posted Mar 22 2018, 13:43
To access * wildcards from a pattern use the "star" variable. For multiple stars this will be an array.

i.e.
var brand = star[0];
var series = star[1];
var year = star[2];

The star will be the whole string fragment matched to the wildcard.

Thumbs up: 0, thumbs down: 0, stars: 0.0
Views: 1975, today: 0, week: 1, month: 10

Identyfikator: 21407233
Tagi: star (parameter with space or dash)
Wysłany: Mar 22 2018, 10:58
Odpowiedzi: 1
Widok: 1863, dziś: 1, tydzień: 1, miesiąc: 14
0 0 0.0/5