我在和PEG.js玩。
我创建了一些接受表单LettersNumbers中输入的简单代码。
这是代码:
start = expression
expression = text + number
text =
a: [a-z]+
{return a.join("");}
number =
b:[0-9]+
{return b.join("");}这里:在线版本代码可以测试,解析器可以下载,另外我还下载了peg.js本身。
不幸的是,文档非常稀疏。我试过:
<script src="peg-0.9.0.min.js"></script>
<script src="parser.js"></script>
<script>
var parser = new PEG;
parser.parse("test123");
</script>但却犯了这些错误:
未定义的ReferenceError:模块 Uncaught : PEG不是函数
有谁能给我举个例子吗?我只需要将生成的js文件集成到一个网站中。
发布于 2015-10-29 15:00:42
这个答案假设您希望继续使用PEG.js联机版本来构建解析器。
只有在生成网页中的解析器时才需要peg-0.9.0.min.js。因为您正在使用PEG.js联机版本来生成解析器,所以不需要这样做。
您确实需要包括下载的parser.js。您需要在PEG.js web版本中指定一个浏览器友好的全局变量并重新下载。
此示例使用PARSER

在此之后,可以使用:
<script src="parser.js"></script>
<script>
PARSER.parse("test123");
</script>柱塞实例
发布于 2015-10-29 15:02:25
如果您想在网上使用它,您需要下载浏览器版本,或者从CDN下载它。
此外,您还需要使用它的javascriptAPI来创建解析器。
// One line version of your grammer.
var parser = PEG.buildParser('start = expression;expression = text + number;text = a: [a-z]+{return a.join("");};number = b:[0-9]+{return b.join("");}');
console.log(parser.parse("test123"));<script src="https://cdnjs.cloudflare.com/ajax/libs/pegjs/0.7.0/peg.min.js"></script>
https://stackoverflow.com/questions/33417367
复制相似问题