当前位置: 首页 > wzjs >正文

动态网站开发语言的种类网络工程师培训一般多少钱

动态网站开发语言的种类,网络工程师培训一般多少钱,网站开发系统,wordpress隐藏版本号推荐2个文本解析开源工具,方便我们解析文本,比如解析日志文件、构建自己的编程语言还是其他需要精确解析和错误报告的场景。 一、Pidgin 项目地址: https://github.com/benjamin-hodgson/Pidgin 一个解析组合器库,提供了一个高…

推荐2个文本解析开源工具,方便我们解析文本,比如解析日志文件、构建自己的编程语言还是其他需要精确解析和错误报告的场景。

一、Pidgin

项目地址:

https://github.com/benjamin-hodgson/Pidgin

一个解析组合器库,提供了一个高级别的声明性工具来构建解析器,使得编写解析器变得简单而直观。

1、轻量化与高效

Pidgin专注于提供轻量级的解决方案,旨在减少内存占用和提高解析速度。通过精心设计的数据结构和算法,Pidgin 能够在不牺牲功能的前提下实现高效的解析。

2、灵活性

Pidgin 支持解析各种复杂的数据格式,不仅限于文本数据。由于其能够处理任意类型的输入令牌(tokens),Pidgin 可以用于解析二进制协议、标记化输入等多种场景。

3、易于使用

与正则表达式相比,Pidgin 提供了更强大的解析能力,而与 ANTLR 等解析生成器相比,它又更简单易用。

Pidgin 的 API 设计直观,允许开发者以声明性的方式定义语法规则,而无需编写复杂的代码。

// 使用一个解析器Char('a')来检查输入字符串"a"是否可以被解析为单个字符'a'。
// 如果可以,Assert.AreEqual将验证解析结果是否为'a'。
Parser<char, char> parser = Char('a');  
Assert.AreEqual('a', parser.ParseOrThrow("a"));// 使用Digit解析器来检查输入字符串"3"是否可以被解析为一个数字字符,并期望得到整数形式的'3'(尽管这里实际上得到的是字符'3')。
// 注意:如果目标是得到整数类型的3,而不是字符'3',则示例可能需要调整或明确说明转换。
// 但按照代码字面意思,Assert.AreEqual验证的是字符'3'。
Assert.AreEqual('3', Digit.ParseOrThrow("3"));// 创建一个解析器String("foo"),该解析器尝试从输入字符串中提取子字符串"foo"。
// 如果输入字符串确实是"foo",则Assert.AreEqual将验证解析结果是否为字符串"foo"。
Parser<char, string> parser = String("foo");  
Assert.AreEqual("foo", parser.ParseOrThrow("foo"));// 使用Return(3)创建一个解析器,该解析器不依赖于输入字符串,而是直接返回整数3。
// 这意味着无论输入字符串是什么,解析结果都将是3。
// 因此,即使输入是"foo",Assert.AreEqual仍然验证解析结果是否为整数3。
Parser<char, int> parser = Return(3);   
Assert.AreEqual(3, parser.ParseOrThrow("foo"));

二、****Superpower

项目地址:

https://github.com/datalust/superpower

Superpower 的核心功能是将字符序列作为输入,并生成一个数据结构,以便程序更容易分析、操作或转换。这可以是简单的数字、数据格式中的字段列表,或者是某种编程语言的抽象语法树。

Superpower 允许以声明式风格编写解析器,并在遇到无效输入时提供精确和信息丰富的错误报告。

Superpower 在构建时特别注重性能。通过减少回溯、避免分配和间接调度,从而用于极高的性能。

//解析器:由一个字母开头,后面可以跟任意数量的字母、数字或下划线
TextParser<string> identifier =// 使用LINQ查询表达式来构建解析器from first in Character.Letter  // 第一个字符必须是字母。// 后续字符可以是字母、数字或下划线,且可以出现多次(Many()表示0次或多次)。from rest in Character.LetterOrDigit.Or(Character.EqualTo('_')).Many()// 将第一个字符和后续字符组合成一个字符串。select first + new string(rest);// 使用上面定义的identifier解析器来解析字符串"abc123"。
var id = identifier.Parse("abc123");//验证解析结果是否与预期值"abc123"相等
Assert.Equal("abc123", id);

- End -

http://www.dtcms.com/wzjs/474934.html

相关文章:

  • 微信辅助做任务网站谷歌paypal官网入口
  • 一个软件的开发流程图seo学堂
  • 武汉企业宣传片制作公司百度快速优化推广
  • 纪委网站举报怎么做百度站长工具怎么查排名
  • 现在做网站用什么程序关键词排名优化公司外包
  • 中国建筑网站平台有哪些怎么给网站做优化
  • 济南网站建设第六网建企业推广宣传文案
  • 可以做网站头像的图片产品运营主要做什么
  • 找工作在哪个app找比较真实可靠147seo工具
  • 网站上怎么做返回主页链接网络推广需要多少费用
  • 记事本里做网站 怎么把字体适合小学生的最新新闻
  • 彩票网站做代理app软件开发
  • WordPress小工具两列seo网站推广简历
  • 手机如何免费做网站微信管理软件哪个最好
  • 网站导航 javascript竞价推广代运营服务
  • 萧山做网站谷歌浏览器官网手机版
  • 两学一做网站进不去百度竞价入口
  • 郑州网站建设渠道网站怎么推广效果好一点呢
  • 做移动类网站的书推荐自媒体运营
  • 品牌网站官网怎么制作网站?
  • 社区网站设计分享几个x站好用的关键词
  • 长沙网站整站优化抖音广告推广怎么收费
  • 北京网站建设哪家专业北京seo方法
  • 网站做垃圾分类个人接外包的网站
  • 杭州手机申请网站登录百度精准营销获客平台
  • 西安有一个电影他要拉投资做网站百度在线问答
  • 怎么做网站跟域名互联网广告代理商
  • wordpress文件上传湖南网站营销seo方案
  • 做微网站需要哪种公众号腾讯云域名
  • 官方网站是什么西安做网站的网络公司