16

我正在尝试编写一个正则表达式来查找文本中的所有评论。例如所有之间/* */。例子:

/* 你好 */

当我这样做时:/\*.*\*/,它的行为很奇怪,并且没有显示任何内容。它有什么问题?

编辑:评论可以分布在多行

4

6 回答 6

26

与上面发布的示例不同,您尝试匹配跨越多行的评论。默认情况下,.不匹配换行符。因此,您必须在正则表达式中启用多行模式以匹配多行注释。

此外,您可能需要使用.*?而不是.*. 否则,它将使最大的匹配成为可能,这将是第一个打开的评论和最后一个关闭的评论之间的所有内容。

我不知道如何在 Sublime Text 2 中启用多行匹配模式。我不确定它是否可以作为模式使用。但是,您可以使用 CTRL + Enter 在实际模式中插入换行符。所以,我建议这个替代方案:

/\*(.|\n)*?\*/

如果 Sublime Text 2 无法识别\n,您也可以使用 CTRL + Enter 在模式中插入换行符,代替\n.

于 2013-02-20T09:20:23.983 回答
8

几年前我遇到了这个问题,并为此写了整篇文章

如果您无法访问非贪婪匹配(并非所有正则表达式库都支持非贪婪匹配),那么您应该使用这个正则表达式:

/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/

如果您确实可以访问非贪婪匹配,那么您可以使用:

/\*(.|[\r\n])*?\*/

另外,请记住,正则表达式只是此问题的启发式方法。正则表达式不支持某些看起来是正则表达式注释但实际上不是的情况:

someString = "An example comment: /* example */";

// The comment around this code has been commented out.
// /*
some_code();
// */
于 2013-07-10T19:19:11.253 回答
3

只想添加 HTML 注释就是这个

\<!--(.|\n)*?-->
于 2018-03-02T13:54:05.503 回答
1

只是关于使用正则表达式删除编程语言文件中的注释的附加说明。

警告!

这样做你不能忘记你有字符串/**/在代码中的字符串中的情况——比如var string = "/*";——(我们永远不知道你是否解析了一个不属于你的巨大代码)!

所以最好的办法是用编程语言解析文档,并用一个布尔值来保存打开字符串的状态(并忽略打开字符串中的任何匹配项)。

同样,由 分隔的字符串"可以包含 a\"所以注意正则表达式!

于 2016-10-08T16:00:53.880 回答
0

您无法编写能够正确查找所有注释甚至一种类型的注释(单行或多行)的正则表达式。

正则表达式只能提供部分匹配,可能涵盖所有情况的 90%,但仅此而已。

正则表达式的语法非常复杂,只有通过进行完整的表达式评估才能在 100% 的情况下正确识别它们,而这又基于对代码进行标记。后者是一项艰巨的任务,今天所有的 AST 解析器都在实现。请参阅AST 资源管理器

只有正确编写的 AST 解析器才能准确地告诉您所有正则表达式在代码中的位置。您将不得不在此基础上编写一个解析器。

或者,您可以使用已经完成所有这些工作的现有库之一,例如decomment


任何正面方法都会失败的 RegEx 示例,无法从注释块中分辨出正则表达式:

  • /\//- 它会认为这个正则表达式是单行注释
  • /\/*/- 它会认为这个正则表达式打开一个多行注释
于 2016-01-02T17:34:16.923 回答
0

user1919238 写的答案有效。只是在这里证实了这一点,尽管许多赞成票可能确实给了你一个线索。它摆脱了所有这些烦人的块注释,放在这里只是为了显示有用性/感谢 user1919238 节省时间:

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9zdHlsZXMvZ2xvYmFscy5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0VBRUUsVUFBVTtFQUNWLFNBQVM7RUFDVDt3RUFDc0U7QUFDeEU7O0FBRUE7RUFDRSxjQUFjO0VBQ2QscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0Usc0JBQXNCO0FBQ3hCIiwic291cmNlc0NvbnRlbnQiOlsiaHRtbCxcbmJvZHkge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFNlZ29lIFVJLCBSb2JvdG8sIE94eWdlbixcbiAgICBVYnVudHUsIENhbnRhcmVsbCwgRmlyYSBTYW5zLCBEcm9pZCBTYW5zLCBIZWx2ZXRpY2EgTmV1ZSwgc2Fucy1zZXJpZjtcbn1cblxuYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuIl0sInNvdXJjZVJvb3QiOiIifQ== */

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9zdHlsZXMvSG9tZS5tb2R1bGUuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsaUJBQWlCO0VBQ2pCLGlCQUFpQjtFQUNqQixhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLHVCQUF1QjtFQUN2QixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsU0FBTztFQUNQLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsdUJBQXVCO0VBQ3ZCLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxhQUFhO0VBQ2IsNkJBQTZCO0VBQzdCLGFBQWE7RUFDYix1QkFBdUI7RUFDdkIsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsYUFBYTtFQUNiLHVCQUF1QjtFQUN2QixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxjQUFjO0VBQ2QscUJBQXFCO0FBQ3ZCOztBQUVBOzs7RUFHRSwwQkFBMEI7QUFDNUI7O0FBRUE7RUFDRSxTQUFTO0VBQ1QsaUJBQWlCO0VBQ2pCLGVBQWU7QUFDakI7O0FBRUE7O0VBRUUsa0JBQWtCO0FBQ3BCO0FBQ0E7RUFDRSxnQkFBZ0I7RUFDaEIsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsaUJBQWlCO0VBQ2pCO29EQUNrRDtBQUNwRDs7QUFFQTtFQUNFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsdUJBQXVCO0VBQ3ZCLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsWUFBWTtFQUNaLGVBQWU7RUFDZixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLGNBQWM7RUFDZCxxQkFBcUI7RUFDckIseUJBQXlCO0VBQ3pCLG1CQUFtQjtFQUNuQixxREFBcUQ7QUFDdkQ7O0FBRUE7OztFQUdFLGNBQWM7RUFDZCxxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsU0FBUztFQUNULGtCQUFrQjtFQUNsQixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRTtJQUNFLFdBQVc7SUFDWCxzQkFBc0I7RUFDeEI7QUFDRiIsInNvdXJjZXNDb250ZW50IjpbIi5jb250YWluZXIge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgcGFkZGluZzogMCAwLjVyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4ubWFpbiB7XG4gIHBhZGRpbmc6IDVyZW0gMDtcbiAgZmxleDogMTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5mb290ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlYWVhZWE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uZm9vdGVyIGltZyB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG59XG5cbi5mb290ZXIgYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4udGl0bGUgYSB7XG4gIGNvbG9yOiAjMDA3MGYzO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi50aXRsZSBhOmhvdmVyLFxuLnRpdGxlIGE6Zm9jdXMsXG4udGl0bGUgYTphY3RpdmUge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgZm9udC1zaXplOiA0cmVtO1xufVxuXG4udGl0bGUsXG4uZGVzY3JpcHRpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uZGVzY3JpcHRpb24ge1xuICBsaW5lLWhlaWdodDogMS41O1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cblxuLmNvZGUge1xuICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBmb250LWZhbWlseTogTWVubG8sIE1vbmFjbywgTHVjaWRhIENvbnNvbGUsIExpYmVyYXRpb24gTW9ubywgRGVqYVZ1IFNhbnMgTW9ubyxcbiAgICBCaXRzdHJlYW0gVmVyYSBTYW5zIE1vbm8sIENvdXJpZXIgTmV3LCBtb25vc3BhY2U7XG59XG5cbi5ncmlkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWF4LXdpZHRoOiA4MDBweDtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbn1cblxuLmNhcmQge1xuICBtYXJnaW46IDFyZW07XG4gIGZsZXgtYmFzaXM6IDQ1JTtcbiAgcGFkZGluZzogMS41cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWFlYWVhO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLCBib3JkZXItY29sb3IgMC4xNXMgZWFzZTtcbn1cblxuLmNhcmQ6aG92ZXIsXG4uY2FyZDpmb2N1cyxcbi5jYXJkOmFjdGl2ZSB7XG4gIGNvbG9yOiAjMDA3MGYzO1xuICBib3JkZXItY29sb3I6ICMwMDcwZjM7XG59XG5cbi5jYXJkIGgzIHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cblxuLmNhcmQgcCB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4ubG9nbyB7XG4gIGhlaWdodDogMWVtO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgLmdyaWQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cbiJdLCJzb3VyY2VSb290IjoiIn0= */

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9zdHlsZXMvY3VzdG9tLm1vZHVsZS5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxVQUFVO0VBQ1YsU0FBUztFQUNUO3dFQUNzRTtFQUN0RSxrQkFBa0I7RUFDbEIsa0JBQWtCO0FBQ3BCO0FBQ0E7RUFDRSxVQUFVO0VBQ1YsU0FBUztFQUNULGNBQWM7RUFDZCxlQUFlO0FBQ2pCO0FBQ0E7RUFDRSxVQUFVO0VBQ1YsU0FBUztFQUNULGVBQWU7RUFDZixjQUFjO0FBQ2hCO0FBQ0E7RUFDRSxlQUFlO0VBQ2YsWUFBWTtBQUNkO0FBQ0E7OztFQUdFLGVBQWU7RUFDZixjQUFjO0FBQ2hCO0FBQ0E7RUFDRSxrQkFBa0I7RUFDbEIsWUFBWTtBQUNkO0FBQ0E7OztFQUdFLGVBQWU7RUFDZixjQUFjO0FBQ2hCO0FBQ0E7RUFDRSxnQkFBZ0I7RUFDaEIsbUJBQW1CO0FBQ3JCO0FBQ0E7RUFDRSxlQUFlO0VBQ2YsNENBQTRDO0FBQzlDO0FBQ0E7RUFDRSxlQUFlO0VBQ2YsNENBQTRDO0FBQzlDO0FBQ0E7RUFDRSxrQkFBa0I7RUFDbEIsb0JBQW9CO0VBQ3BCLGNBQWM7RUFDZCwwQkFBMEI7QUFDNUI7QUFDQTtFQUNFLGtCQUFrQjtFQUNsQixlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsWUFBWTtFQUNaLGVBQWU7RUFDZixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLGNBQWM7RUFDZCxxQkFBcUI7RUFDckIseUJBQXlCO0VBQ3pCLG1CQUFtQjtFQUNuQixxREFBcUQ7QUFDdkQ7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsU0FBUztFQUNULGtCQUFrQjtFQUNsQixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxZQUFZO0VBQ1osZUFBZTtFQUNmLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsY0FBYztFQUNkLHFCQUFxQjtFQUNyQix5QkFBeUI7RUFDekIsbUJBQW1CO0VBQ25CLHFEQUFxRDtBQUN2RDtBQUNB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RSxjQUFjO0VBQ2QscUJBQXFCO0FBQ3ZCO0FBQ0E7RUFDRSxrQkFBa0I7RUFDbEIsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsU0FBUztFQUNULGtCQUFrQjtFQUNsQixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7QUFDQTtFQUNFLGFBQWE7QUFDZjtBQUNBO0VBQ0UsYUFBYTtFQUNiLGtCQUFrQjtFQUNsQixrQkFBa0I7QUFDcEI7QUFDQTtFQUNFLFVBQVU7QUFDWjtBQUNBO0VBQ0UsYUFBYTtBQUNmO0FBQ0E7RUFDRSxXQUFXO0FBQ2I7QUFDQTtFQUNFLFNBQVM7QUFDWDtBQUNBO0VBQ0UsaUJBQWlCO0FBQ25CO0FBQ0E7RUFDRTtBQUNGO0FBQ0E7RUFDRSxrQkFBa0I7QUFDcEI7QUFDQTtFQUNFLGFBQWE7QUFDZjtBQUNBO0VBQ0UsVUFBVTtBQUNaOzs7OztBQUtBO0VBQ0U7SUFDRSxXQUFXO0lBQ1gsc0JBQXNCO0VBQ3hCO0FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIubGlua2xpbmsge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFNlZ29lIFVJLCBSb2JvdG8sIE94eWdlbixcbiAgICBVYnVudHUsIENhbnRhcmVsbCwgRmlyYSBTYW5zLCBEcm9pZCBTYW5zLCBIZWx2ZXRpY2EgTmV1ZSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG59XG4ubGlua2xpbms6aG92ZXIge1xuICBwYWRkaW5nOiAxO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjMDA3MGYzO1xuICBmb250LXNpemU6IDExMCU7XG59XG4ubGlua2xpbms6YWN0aXZlIHtcbiAgcGFkZGluZzogMTtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDExNSU7XG4gIGNvbG9yOiAjZmZhYzMzO1xufVxuLnBhZ2VzeW1ib2wge1xuICBmb250LXNpemU6IDNyZW07XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbi5wYWdlc3ltYm9sOmhvdmVyLFxuLnBhZ2VzeW1ib2w6Zm9jdXMsXG4ucGFnZXN5bWJvbDphY3RpdmUge1xuICBmb250LXNpemU6IDZyZW07XG4gIGNvbG9yOiAjMDA3MGYzO1xufVxuLnBhZ2VzeW1ib2wgdGV4dCB7XG4gIGZvbnQtc2l6ZTogMC4wMDA1JTtcbiAgY29sb3I6IHdoaXRlO1xufVxuLnBhZ2VzeW1ib2wgdGV4dDpob3Zlcixcbi5wYWdlc3ltYm9sIHRleHQ6Zm9jdXMsXG4ucGFnZXN5bWJvbCB0ZXh0OmFjdGl2ZSB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgY29sb3I6ICNmZmFjMzM7XG59XG4uZ2lnYW50aWN7XG4gIGZvbnQtc2l6ZTogMjAwcHg7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG59XG4ud29ya3NjaXRlZCB7XG4gIGZvbnQtc2l6ZTogMTJwdDtcbiAgZm9udC1mYW1pbHk6IFwiVGltZXMgTmV3IFJvbWFuXCIsIFRpbWVzLCBzZXJpZjtcbn1cbi53b3Jrc2NpdGVkIHBwIHtcbiAgZm9udC1zaXplOiAxMnB0O1xuICBmb250LWZhbWlseTogXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmO1xufVxuLmhyZWYge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogIzAwNzBmMztcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uc2NhbnNpb24ge1xuICBmb250LWZhbWlseTogTWVubG87XG4gIGZvbnQtc2l6ZTogMTFwdDtcbn1cblxuLmNoZWNrYm94Y2FyZCB7XG4gIG1hcmdpbjogMXJlbTtcbiAgZmxleC1iYXNpczogNDUlO1xuICBwYWRkaW5nOiAxLjVyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlYWVhZWE7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlO1xufVxuXG4uY2hlY2tib3hjYXJkIGgzIHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cblxuLmNoZWNib3hjYXJkIHAge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLmNoZWNrYm94Y2FyZCBjaGVja2JveCB7XG4gIG1hcmdpbjogMXJlbTtcbiAgZmxleC1iYXNpczogNDUlO1xuICBwYWRkaW5nOiAwLjNyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlYWVhZWE7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlO1xufVxuLmNoZWNrYm94Y2FyZCBjaGVja2JveDpob3Zlcixcbi5jaGVja2JveGNhcmQgY2hlY2tib3g6Zm9jdXMsXG4uY2hlY2tib3hjYXJkIGNoZWNrYm94OmFjdGl2ZSB7XG4gIGNvbG9yOiAjMDA3MGYzO1xuICBib3JkZXItY29sb3I6ICMwMDcwZjM7XG59XG4uY2hlY2tib3hjYXJkIG9wcG9zaXRlYm94IHtcbiAgY29sb3I6IHdoaXRlO1xuICBib3JkZXItY29sb3I6IHdoaXRlO1xufVxuLmNoZWNrYm94Y2FyZCBvcHBvc2l0ZWJveDpob3Zlcixcbi5jaGVja2JveGNhcmQgb3Bwb3NpdGVib3g6Zm9jdXMsXG4uY2hlY2tib3hjYXJkIG9wcG9zaXRlYm94OmFjdGl2ZSB7XG4gIGNvbG9yOiAjMDA3MGYzO1xuICBib3JkZXItY29sb3I6ICMwMDcwZjM7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cbi5ncmlkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWF4LXdpZHRoOiA4MDBweDtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbn1cbi5zdGFjayB7XG4gIGRpc3BsYXk6IC1tb3otc3RhY2s7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgbWF4LXdpZHRoOiA4MDBweDtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbn1cbi5ib3gge1xuICBkaXNwbGF5OiAtbW96LWJveDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBtYXgtd2lkdGg6IDgwMHB4O1xuICBtYXJnaW4tdG9wOiAzcmVtO1xufVxuLnBvcHVwIHtcbiAgZGlzcGxheTogLW1vei1wb3B1cDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBtYXgtd2lkdGg6IDgwMHB4O1xuICBtYXJnaW4tdG9wOiAzcmVtO1xufVxuLmNvbnRhaW5lciB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5tYWluIHtcbiAgcGFkZGluZzogNXJlbSAwO1xuICBmbGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmZvb3RlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2VhZWFlYTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5mb290ZXIgaW1nIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbn1cblxuLmZvb3RlciBhIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi50aXRsZSBhIHtcbiAgY29sb3I6ICMwMDcwZjM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnRpdGxlIGE6aG92ZXIsXG4udGl0bGUgYTpmb2N1cyxcbi50aXRsZSBhOmFjdGl2ZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4udGl0bGUge1xuICBtYXJnaW46IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICBmb250LXNpemU6IDRyZW07XG59XG5cbi50aXRsZSxcbi5kZXNjcmlwdGlvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5kZXNjcmlwdGlvbiB7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuLmRlc2NyaXB0bGVmdCB7XG4gIGxpbmUtaGVpZ2h0OjEuNTtcbiAgZm9udC1zaXplOjEuNXJlbTtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIHRleHQtanVzdGlmeTogbGVmdDtcbn1cbi5jb2RlIHtcbiAgYmFja2dyb3VuZDogI2ZhZmFmYTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBwYWRkaW5nOiAwLjc1cmVtO1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgZm9udC1mYW1pbHk6IE1lbmxvLCBNb25hY28sIEx1Y2lkYSBDb25zb2xlLCBMaWJlcmF0aW9uIE1vbm8sIERlamFWdSBTYW5zIE1vbm8sXG4gICAgQml0c3RyZWFtIFZlcmEgU2FucyBNb25vLCBDb3VyaWVyIE5ldywgbW9ub3NwYWNlO1xufVxuXG4uZ3JpZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1heC13aWR0aDogODAwcHg7XG4gIG1hcmdpbi10b3A6IDNyZW07XG59XG4uY29ycmVjdCB7XG4gIG1hcmdpbjogMXJlbTtcbiAgZmxleC1iYXNpczogNDUlO1xuICBwYWRkaW5nOiAxLjVyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtZW1waGFzaXM6IGJvbGQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIGxpZ2h0Z3JlZW47XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlO1xufVxuLmNvcnJlY3Q6aG92ZXIsXG4uY29ycmVjdDpmb2N1cyxcbi5jb3JyZWN0OmFjdGl2ZSB7XG4gIGNvbG9yOiBncmVlbjtcbiAgYm9yZGVyLWNvbG9yOiBncmVlbjtcbn1cbi5jb3JyZWN0IGgzIHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cblxuLmNvcnJlY3QgcCB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuLm9rIHtcbiAgbWFyZ2luOiAxcmVtO1xuICBmbGV4LWJhc2lzOiA0NSU7XG4gIHBhZGRpbmc6IDEuNXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1lbXBoYXNpczogYm9sZDtcbiAgYm9yZGVyOiAxcHggc29saWQgeWVsbG93O1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLCBib3JkZXItY29sb3IgMC4xNXMgZWFzZTtcbn1cbi5vazpob3Zlcixcbi5vazpmb2N1cyxcbi5vazphY3RpdmUge1xuICBjb2xvcjogb3JhbmdlO1xuICBib3JkZXItY29sb3I6IG9yYW5nZTtcbn1cbi5vayBoMyB7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG59XG5cbi5vayBwIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5jYXJkIHtcbiAgbWFyZ2luOiAxcmVtO1xuICBmbGV4LWJhc2lzOiA0NSU7XG4gIHBhZGRpbmc6IDEuNXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VhZWFlYTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2U7XG59XG5cbi5jYXJkOmhvdmVyLFxuLmNhcmQ6Zm9jdXMsXG4uY2FyZDphY3RpdmUge1xuICBjb2xvcjogIzAwNzBmMztcbiAgYm9yZGVyLWNvbG9yOiAjMDA3MGYzO1xufVxuLmNhcmQgaDMge1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuXG4uY2FyZCBwIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5sb2dvIHtcbiAgaGVpZ2h0OiAxZW07XG59XG4uc3BhY2UyIHtcbiAgbGluZS1oZWlnaHQ6Mjtcbn1cbi5fMjE1IHtcbiAgbGluZS1oZWlnaHQ6MjtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uY3lhbiB7XG4gIGNvbG9yOmN5YW47XG59XG4ubWFnZW50YSB7XG4gIGNvbG9yOm1hZ2VudGE7XG59XG4uZ3JlZW4ge1xuICBjb2xvcjpncmVlbjtcbn1cbi5yZWQge1xuICBjb2xvcjpyZWQ7XG59XG4ubGNvcmFsIHtcbiAgY29sb3I6IGxpZ2h0Y29yYWw7XG59XG4ubHNhbG1vbntcbiAgY29sb3I6IGxpZ2h0c2FsbW9uXG59XG4uZ3JlZW55ZWxsb3d7XG4gIGNvbG9yOiBncmVlbnllbGxvdztcbn1cbi5za3libHVlIHtcbiAgY29sb3I6c2t5Ymx1ZTtcbn1cbi5ibHVlIHtcbiAgY29sb3I6Ymx1ZTtcbn1cblxuXG5cblxuQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gIC5ncmlkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG59XG4iXSwic291cmNlUm9vdCI6IiJ9 */
于 2021-04-10T21:39:43.723 回答