javascript - 是否有类似模板文字的东西,反之亦然?

标签 javascript node.js npm ecmascript-6

使用模板文字很容易产生这样的东西:

const age = 22;
console.log(`Paul is ${age} years old.`)
// => Paul is 22 years old.

在从文本中解析信息时,我在问自己是否有任何可能或包反之亦然。

可以是一个函数,它检索模板和要匹配的字符串,如下所示:

const template = `Paul is ${age} years old.`;

parseTemplate(template, 'Paul is 19 years old.');
// returns e.g. {age: '19'}

不需要复杂的用例或类型解析。

最佳答案

您可以使用 destructuring from regex match

const [, age] = /^Paul is (\d+) years old.$/i.exec("Paul is 22 years old");
// age === "22"

请注意,解构模式 [, age] 中的第一个元素是空的。那是因为 RegExp.prototype.exec() 的结果是数组,第一个值是匹配的字符串。

关于javascript - 是否有类似模板文字的东西,反之亦然?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45101461/

相关文章:

javascript - Node.js:setInterval 的替代品,更适合游戏循环

node.js - 用于检索 GCP Node J 中的多个值的数据存储查询

node.js - 错误 : spawn/data/craft/templates/node_modules/optipng-bin/vendor/optipng ENOENT

javascript 看不到函数

javascript - sessionStorage 在页面之间不持久

javascript - jquery prev 直到类在我的情况下不起作用

oop - 在 NodeJS 中创建一个类

github - 在没有 authtoken 的情况下使用 Github Package Registry

node.js - npm 列表不显示已安装的包

javascript - 文本区域中的动态文本 - 获取值(value)