2014-04-22 46 views
2

我试图理解源代码..(基本上是一个正则表达式解析器)。但是我不能够理解下面的表达式:scala中以下表达式的含义是什么?

def quotes = “‘“ ~> "[^']+".r <~ "'" 

所以我很理解[^']意味着找到一切除了单引号?对??但是旁边的双引号是什么?以及双引号内单引号的那些扁平箭头是什么?

开始用单引号("'")+含有多于一个非单引号字符("[^']+".r)+用单引号("'")结束:

+0

可以分享代码 –

+0

的其他部分分享..代码..见编辑 – Fraz

回答

2

"'" ~> "[^']+".r <~ "'"单引号块相匹配。

+0

但是那些扁平箭头是什么? “〜>” – Fraz

+4

这些是辅助操作符'〜>'和'<〜',它们丢弃操作数之一的结果,通常是规则中不包含有用数据的常量部分。 – aelor

+1

这样你只能得到报价中的值,不包括报价 – aelor

相关问题