升级到我们的商业服务 Bot Libre for Business 只为 4.99美元 ,每月
Self, AIML, and scripting

star (parameter with space or dash)

通过 Schrader 发布 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: 2668, today: 1, week: 1, month: 16

Id: 21407233
标签: star (parameter with space or dash)
发布: Mar 22 2018, 10:58
答复: 1
的风景: 2516, 今天: 1, 周: 1, 一个月: 13
0 0 0.0/5