最近写脚本发现正则也挺有用的,于是就研究了一下。总结起来使用正则表达式来匹配中文、韩文、日文、拉丁等范围的字符非常方便。这里也用到了unicode编码表相关知识,下面给出wiki的具体链接,有兴趣的童鞋可以去看看。Unicode字符平面映射:http://zh.wikipedia.org/wiki/...
分类:
其他好文 时间:
2015-04-18 14:23:39
阅读次数:
561
12.3.3.3 在 C# 中使用平面映射
类似于 collect 函数的LINQ 运算符,是 SelectMany,但两者之间也有差异,因为 LINQ 有不同的要求。而 F# 序列表达式只能使用 collect 函数表示,LINQ 查询可以使用许多其它运算符,所以,对于序列操作,它们需要不同的方式。
我们再先看一下普通语法,然后,再考虑转换成使用显式扩展方法的语法,我们还使用前面的 F...
12.3.3.2 直接使用平面映射
首先,我们要看看平面映射到底是什么样子。通常,理解函数如何运行的第一步,就是研究类型签名。图 12.2 比较了 Seq.map(普通映射)和 Seq.collect(平面映射)的类型签名。
图 12.2 对于每个输入元素,普通映射返回一个元素,而平面映射,可以返回元素的任意集合。
提醒一下,类型签名中的 # 号,描述映射函数,传递给...
分类:
其他好文 时间:
2015-01-25 18:18:48
阅读次数:
213
12.3.3.1 序列表达式中的平面映射
假设我们有一个关于城市的元组列表,每个元组包含城市的名字和它所在的国家,另外,我们还有一个列表,是用户所选的城市。因此,我们可以这样表示样本数据:
let cities = [ ("New York","USA"); ("London", "UK");
("Cambridge","UK"); ("Ca...
分类:
其他好文 时间:
2015-01-25 11:09:37
阅读次数:
182
12.3.3 平面映射(flatteningprojection)
平面映射,可以为源集合中的每个元素,生成元素序列,合并所有返回序列。我们很快就会看到,这是定义其他处理操作,包括映射和筛选,的基本操作。平面映射所独有的特征,就是能够为每个输入元素生成多个输出元素。
注意
在 LINQ 库中,这个操作称为 SelectMany。在查询表达式中,用多个 from 子句表示。从...
分类:
其他好文 时间:
2015-01-24 11:46:10
阅读次数:
211