绿丝成语网

lex是什么意思怎么读?快速掌握这个词的使用场景

清楚这个到底在说什么

很多人看到lex这个词的时候第一反应估计都是懵的,这到底是缩写是什么生僻词?说白了,lex在咱们平时接触语境里,最常见身份两个一个是和代码编程相关的“词法分析器”,另一个就是那种专门收录词条的词典或者词汇表。你要是想读准它,特别简单发音有点像“莱克斯”,跟那个著名的反派卢瑟的名字读音差不多,重音就在前面干脆利落。

我第一次被这个词难住的经历

我头一回正儿八经研究这个词,还是前几年折腾自动化脚本的时候。那时候我接了个私活,帮个小公司一套自动抓取和分类信息系统客户给的要求特别细,甚至根据不同行业的黑话来过滤内容。我当时心气儿高,觉得这还不简单?结果真上手写逻辑的时候发现,光靠简单的正则匹配根本搞不定那些乱七八糟的文本格式,逻辑全乱套了。

我在论坛抓耳挠腮地发帖求助,有个大牛回了我一句:“你这就是缺个lex,自己写个规则文件一下就行了。”我当时盯着那个“lex”瞅了半天,心想这啥玩意儿

硬着头皮开始摸索实践

一步,翻资料工具我上网一通乱搜,才发现这东西计算领域通常指Lex工具,它是专门用来生成扫描器的。简单说,就是你给它一堆定义好的规矩”,它就能帮你从一堆乱码一样文字里,精准地把你要的关键词、数字符号一个一个给抠出来,还顺便贴上标签。这不就是我需要的吗?

lex是什么意思怎么读?快速掌握这个词的使用场景

第二步,动手写规则。下载了一个叫Flex的开源版本,这东西稍微现代点。我依葫芦画瓢,在记事本里新建了一个后缀是.l的文件。我先把那些行业黑话定义成一个个模式比如核心技术”、“行业领先”这种词。当时为了调通这个文件,我熬了两个大夜。因为只要少写一个分号,或者正则表达式里多了一个空格,编译器就疯狂报错,看得我眼睛都直了。

第三步,编译并运行。我用命令行运行了flex指令,它瞬间成了一个名为*.c的C语言文件。看着那几千行我根本看不懂的代码被自动生成出来,我心里那个激动劲儿就别提了。我赶紧把这个文件塞进我的程序里,再喂给它一段乱七八糟的新闻稿。你猜怎么着?系统就像长了眼睛一样,清清楚楚地把我要的内容全部打在了屏幕上。

实际生活中的各种场景

除了写代码,我也发现lex这个词在其他地方也挺活跃。比如:

一点心得分享

不管是搞技术还是学外语,像lex这种词,你光看释义是没用的,得真去用它。我那时候要是没被逼着去处理那堆乱七八糟的文本,估计现在也只知道它是个单词。现在我习惯了,只要碰到需要大批量处理文本、搞数据清洗情况,我脑子里第一反应就是:得弄个lex规则跑跑看。这东西虽然刚上手的时候有点劝退,满屏幕的符号看着脑壳痛,但只要你跑通了一次,那种自动化批量解决问题的快感,是手动改代码永远不了的。搞明白了一个词的用法有时候真能让你少走不少弯路。

lex是什么意思怎么读?快速掌握这个词的使用场景
每天一个成语
每天一个成语
这个人很神秘