grafana使用正则表达式提取变量_计算机理论-9.词语提取

词法&语法

词法的意思是构造词语的方法,例如「游泳」这个词语,首先它是个动词,然后我们用了「游」和「泳」两个字,所以如果我们要构造一个词语,我们首先要考虑有哪些字可以用,因为词语都是字构成的,其次我们再考虑我们构造的词语的词性是什么,是动词、名词、还是形容词或者其他之类的。

语法则是造句的方法,因为一个语句是由词语构成的。

在编译器的制作过程中,我们使用正则表达式来表述词法;然后用状态机来实现正则表达式。

串&语言

  • 字母表(alphabet):一个语言所支持的所有字符(如:ASCII、UTF8)
  • 串(string):语言中字母表的一个有穷序列,比如「apple」就是英语的一个串、「你好」就是中文的一个串。也有「空串」的概念。
  • 不可能所有的串就是语言支持的,比如「好你」在中文中就不是个有效的串,所以我们需要一些规则来约束串,其中就有正则表达式

词法分析器的目标

  • 给定程序语言 L 以及所有 L 支持的词汇,从中找出这些词汇,并为他们标注词性。
  • 如果源代码中有语言不支持的词汇,报错并提示用户。

正则表达式

可用于正则语言,用一串字符串来描述正则语言支持哪些词语,但正则语言本身不需要理解这些词语,比如:/apple|banana/,这个正则表达式表示我接收 apple 和 banana 这两个词语,但是正则表达式本身并不需要理解词语的含义。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值