请问有没有可以逆向解析的模板引擎

2019-07-30 11:39:08 +08:00
 lituancheng

常规的模板引擎是传入 template 和 params,得到 content,我想要根据 content 和 template 得到 params,有什么好办法吗?

2021 次点击
所在节点   2019
7 条回复
zhaishunqi
2019-07-30 13:06:43 +08:00
正则
lituancheng
2019-07-30 13:27:01 +08:00
@zhaishunqi 正则的话只能处理 value 为 String 的,如果 value 是 List 类型的,就没法处理了啊
DsuineGP
2019-07-30 15:33:06 +08:00
@lituancheng 正则捕获组
lituancheng
2019-07-30 17:07:30 +08:00
lituancheng
2019-07-30 17:11:28 +08:00
@DsuineGP
假设 content 为:
姓名:张三 年龄:20
姓名:李四 年龄:21
姓名:王五 年龄:22
template 为:
<#list personList as person>
姓名:${person.name} 年龄:${person.age}
</#list>

以上这种的没办法根据正则得到原始 personList 的,关键点在于 template 不知道 list 的实际条数
DsuineGP
2019-07-31 09:14:05 +08:00
@lituancheng 为啥不写 for 循环再用正则匹配呢
DsuineGP
2019-07-31 09:17:47 +08:00
@lituancheng 如果是模版渲染的是 HTML 还有一些 dom 解析的框架可以用,你这个渲染出来的是文本,只能一行一行的正则匹配

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/587435

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX