什么是解析器?(a parser?)

解析器是一种软件,当脚本在web服务器上执行时,它会评估脚本的语法。对于web上使用的脚本语言,解析器的工作方式与编译器在其他类型的应用程序开发环境中的工作方式类似。...

解析器是一种软件,当脚本在web服务器上执行时,它会评估脚本的语法。对于web上使用的脚本语言,解析器的工作方式与编译器在其他类型的应用程序开发环境中的工作方式类似。

A parser is a piece of software that evaluates the syntax of a script when it is executed on a web server.

就像编译器可以从源代码创建要在计算机上使用的目标代码一样,解析器可以将脚本代码转换为可读的目标代码,或者显示在浏览器中执行代码时发现的语法错误。

解析器通常用于脚本开发,因为它们可以在执行脚本时对代码进行求值,并且不需要先编译代码。源代码及其执行的编译都是在一步中进行的,而不是C++或其他二进制编译器,其中源代码编译成目标代码,然后必须单独安装或运行该代码。

解析器和编译器之间最大的区别在于它们所处理的环境和语言。例如,服务器解析许多脚本,并编译应用程序或操作系统源代码以进行安装。这两个术语可以互换使用来表示相同的活动,应用程序代码可以解析为在web上编译的目标代码和脚本代码。

许多解析器按顺序工作,从左到右、从上到下执行提交的语句。当发现错误时,解析器将停止。如果应用程序中存在针对错误条件的编码,则会采取与该编码相关的操作。如果解析的代码是web上的脚本,则在执行代码时,可能会在浏览器窗口中显示错误。如果第11行或更早的代码导致错误,则解析器无法处理第12行的代码。

解析器评估提交的语法(或代码)并确定可执行部分,同时显示发现的错误。这有助于调试代码,并有助于保护可能是项目源代码的知识产权。不必从脚本或编程的角度考虑此过程的示例。想一个英语句子。下面这句话很好:

大棕熊跑得很快。

解析这个句子就是剖析句子中单词的属性,这样读者就会明白熊是一个名词,布朗和大是形容词,描述熊,跑是熊执行的动词或动作。副词fast修饰句子中的动词。

这是解析器所做工作的一个简单示例。它评估为语法提供的代码,并可以创建目标代码或可用输出。

  • 发表于 2021-12-11 22:28
  • 阅读 ( 97 )
  • 分类:互联网

你可能感兴趣的文章

自上而下(top down)和自下而上分析(bottom up parsing)的区别

...编译器中,它执行解析任务。 目录 1. 概述和主要区别 2. 什么是自顶向下的解析 3. 什么是自下而上的解析 4. 并排比较-表格形式的自顶向下与自下而上分析 5. 摘要 什么是自顶向下分析(top down parsing)? 每种编程语言都有一组表...

  • 发布于 2020-10-18 09:45
  • 阅读 ( 717 )

json-python解析:简单指南

... 有一些库和工具箱可用于从几乎任何语言和环境中解析和生成JSON。本文主要讨论使用python处理JSON时产生的方法和问题。 ...

  • 发布于 2021-03-13 11:20
  • 阅读 ( 300 )

cloudflare dns如何帮助解决4大dns隐私风险

... 最终,你的浏览历史是帮助大公司赚钱。这就是为什么你应该总是使用第三方DNS提供商。 ...

  • 发布于 2021-03-20 09:08
  • 阅读 ( 284 )

8款应用和技巧,在android上提供更安全的浏览体验

无论你使用什么设备,保持安全上网都是至关重要的。虽然你可能知道Android上有一些糟糕的应用程序,但总体来说,使用它是安全的。但不管你使用什么操作系统,都要采取额外的预防措施。 ...

  • 发布于 2021-03-22 01:30
  • 阅读 ( 219 )

用这个漂亮的python教程浏览一个网站

靓汤是一个开源的Python库。它使用导航解析器来抓取XML和HTML文件的内容。您需要用于多种分析目的的数据。但是,如果您对Python和web抓取还不熟悉,那么Python的漂亮的Soup库对于web抓取项目来说是值得一试的。 ...

  • 发布于 2021-03-28 10:33
  • 阅读 ( 228 )

如何在linux上使用dig命令

...不显示stats部分。 +不回答:不要显示答案部分。 +诺尔:什么都不要展示! +noall查询选项通常与上述选项结合使用,以便在结果中包含一个部分。因此,您可以使用+noall关闭所有部分,而不是键入一长串查询选项来关闭多个部...

  • 发布于 2021-04-02 10:09
  • 阅读 ( 220 )

什么是apparmor,它如何保证ubuntu的安全?

...中。但是,它在后台无声地运行,因此您可能不知道它是什么以及它在做什么。 AppArmor锁定易受攻击的进程,限制这些进程中的安全漏洞可能造成的损害。AppArmor还可以用来锁定Mozilla Firefox以提高安全性,但它在默认情况下不会...

  • 发布于 2021-04-09 02:16
  • 阅读 ( 233 )

应用背后:奇幻的故事

...没有做任何事情。我们试图找出我们可以使用该引擎解决什么样的问题,让一个自然的语言解析器做一些有助于更好地完成任务的事情。我总是有一个大日历——我是一个大日历人,我一直很沮丧,特别是在那时的iCal。我们于20...

  • 发布于 2021-05-21 11:12
  • 阅读 ( 70 )

如何使用tomahawk将多个音乐服务合并到一个大型图书馆中

...就可以共享你的整个音乐库。你的朋友会看到你一直在听什么,你“喜欢”什么,当前播放的曲目,以及你所有的播放列表。他们也会自动开始与您共享他们的库(您可以通过导航到“控制”>“私人监听”进入私人模式)。...

  • 发布于 2021-05-23 19:31
  • 阅读 ( 211 )

递归下降分析(recursive descent parsing)和预测分析(predictive parsing)的区别

...解析树,并逐步向下移动到叶节点。 覆盖的关键领域 1.什么是递归下降分析-定义,功能2.什么是预测分析-定义,功能3.下降分析和预测分析之间的关系是什么-关联概述4.下降分析和预测分析之间的区别是什么-关键区别的比较 关...

  • 发布于 2021-07-01 10:23
  • 阅读 ( 788 )
f57622w3
f57622w3

0 篇文章

相关推荐