在 JavaScript 中标记字符串

Anika Tabassum Era 2022年5月10日
在 JavaScript 中标记字符串

JavaScript 令牌更像是一个单独扫描字符、表达式和字符串的可视化概念。

如果我们假设将 10+5 作为表达式,那么 lexer(将每个有效字符区分为标记的过程)会将 10 定义为 Number 类型的标记,+ 定义为 Plus,和 5 作为数字类型。

在所有字符都被标记化,更具体地分类之后,它们将被发送到解析。然后解析器规则将指定标记来定义表达式。

可以关注这个链接以获得更详细的解释。我们将考虑一个涵盖 JavaScript 中令牌概念的示例。

在 JavaScript 中使用 split() 方法标记字符串

我们将遵循词法分析器和解析器规则来定义以下示例中的每个单词。全文将首先被扫描为按空格区分的单个单词。

然后,整个标记化组将被解析。这个概念为拆分字符串或任何表达式提供了逐步的方法。

抽象语法树执行表达式的可视化。让我们深入代码以获得示范性解释。

var text = "Is not it weird to live in a world like this? It is a 42";
var words = text.toLowerCase();
var okay = words.split(/\W+/).filter(function(token) {
    return token.length == 2;
});
console.log(okay);

输出:

使用 split() 方法对字符串进行标记

因此,text 字符串被转换为小写,然后 split() 方法完成了分词的任务。

程序是抽象的,因此我们无法直观地确定内部工作流程。我们已经从标记中过滤掉了一些特定长度的单词。

Anika Tabassum Era avatar Anika Tabassum Era avatar

Era is an observer who loves cracking the ambiguos barriers. An AI enthusiast to help others with the drive and develop a stronger community.

LinkedIn GitHub Facebook

相关文章 - JavaScript String