Alb*_*ert 6 javascript parsing
我正在尝试使用Javascript来解析在文本框中输入的文本 - 这将组合各种用户生成的变量来创建随机活动.看这个例子可能会更有意义.一些示例输入可能是:
Activity @Home @Out @Home Read @book for @time Clean up @room for @time @Out Eat at at @restaurant @book Enders Game Lord of the Rings @room bedroom garage basement @restaurant Red Robin McDonalds Starbucks @time 15 minutes 30 minutes 45 minutes 60 minutes
磅/和符号将用于分隔不同的类别.
然后,输出将从给定输入中随机确定,例如:
"在星巴克吃饭." 或"阅读指环王60分钟." 或"清理车库30分钟."
这可行吗?看起来它应该相当简单,但我不知道从哪里开始.有什么建议?
谢谢,
阿尔伯特
Men*_*ene 11
怎么样:
var myText = ...; // Input text
var lines = myText.split("\n");
var numLines = lines.length;
var i;
var currentSection;
var sections = Array();
var phrases = Array();
// parse phrases
for (i = 0; i < numLines; i++) {
var line = lines[i];
if (line.indexOf('@') == 1) {
// start of e.g. time section, handled in nex loop
break;
} else {
// phrase
phrase.push(line);
}
}
// parse sections
for ( ; i < numLines; i++) {
var line = lines[i];
if (line.indexOf('@') == 1) {
// start of next section, handled in nex loop
currentSection = line;
sections[currentSection] = new Array();
} else {
// add section entry
sections[currentSection].push(line);
}
}
Run Code Online (Sandbox Code Playgroud)
这不是太复杂,但做的工作.虽然没有测试,但这样的事情应该有效.如果它能够正常工作,那么它的乐趣在哪里; D.
完全没问题.根据换行符将文本框值拆分为数组.然后,一次遍历数组一个元素,将值排序为每个部分的变量.最后,使用JavaScript的随机数生成器随机确定要选择的每个组中的哪一个.通过将值分配给HTML元素来输出给用户.