上一页 1 2 3 4 5 6 7 ··· 12 下一页
摘要: 一.边界的定义: 通常情况下,以 空格、段落首行、段落末尾、逗号、句号 等符号作为边界,值得注意的是,分隔符“-”也可以作为边界。 二.边界的相对性: 请牢牢记住边界的这个特点: 当你对一个普通字符,比如“s”,设定边界的时候,它的边界是诸如空格、分隔符、逗号、句号等。 当你对一个边界,比如分隔符“-”或者“,”等,设定边界的时候,它的边界是普通字符。 三.匹配单词边界 在正则表达式中可以在字符前面加"\b",来匹配其后面的字符位于字符串首位的字符。还可以在字符后面添加"\b"来匹配其前面的字符位于字符串末尾的字符。有可以匹配单词边界的,自然就有可以匹配 阅读全文
posted @ 2011-04-23 13:13 雁北飞 阅读(464) 评论(0) 推荐(0) 编辑
摘要: 今天在转换数据的时候,需要把数据库中的二进制图片数据转换为图片保存,思路是将数据库的数据读取到byte[]中,然后通过Image.FromStream保存到IList<image>再做统一的处理。但是当对imageList做统一处理时要保存图片的时候一直提示“非一般性的GDI错误”。MSDN: 在 Image 的生存期内,必须使流保持打开。 发现把对imageList的处理部分放到MemoryStream的using块中就不会有错误了。 imageByteList.ForEach((byteArray) => { using (MemoryStream memory = ne 阅读全文
posted @ 2011-04-22 18:04 雁北飞 阅读(7255) 评论(0) 推荐(0) 编辑
摘要: 一.贪婪匹配、惰性匹配概述我们首先从字面意思上来理解一下贪婪匹配和惰性匹配 贪婪匹配(greedy):它会匹配尽可能多的字符。它首先看整个字符串,如果不匹配,对字符串进行收缩;遇到可能匹配的文本,停止收缩,对文本进行扩展,当发现匹配的文本时,它不着急将该匹配保存到匹配集合中,而是对文本继续扩展,直到无法继续匹配 或者 扩展完整个字符串,然后将前面最后一个符合匹配的文本(也是最长的)保存起来到匹配集合中。所以说它是贪婪的。找到匹配的之后还是继续查找,若找到不合适的则返回最后一个匹配合适的。惰性匹配(lazy):它会匹配尽可能少的字符,它从第一个字符开始找起,一旦符合条件,立刻保存到匹配集合中,然 阅读全文
posted @ 2011-04-22 13:47 雁北飞 阅读(1561) 评论(0) 推荐(0) 编辑
摘要: 在上面一节讲到正则学习中讲到的是关于当个字符的匹配,如果想匹配一个很长的字符串中的若干个或者很多个字符,如果都用上面的单个字符匹配模式那将需要书写很长的正则表达式,列入在web的颜色判断中就需要这么写#[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]。这明显是违反DRY原则。对于多个字符的匹配正则有提供其他的可以解决的办法。一.匹配一个或者多个:在正则中,可以在单个字符比如"x",字符组"[a-d]",特定类型比如"\d",单个任意字符"."后面添加"+&q 阅读全文
posted @ 2011-04-22 11:33 雁北飞 阅读(23708) 评论(0) 推荐(0) 编辑
摘要: 一.匹配单个字符: 1. "."可以匹配任意的单个字符,英文字母,数字,其还可以连续使用。如:".e.."匹配的字符串是e前面有任意一个字符,e后面有任意两个字符 如果想匹配元字符 "."则需要进行转义 "/."二.匹配字符词组: 1.上面介绍的"."能匹配任意单个字符,其匹配非常广泛,可是有时我们想匹配的单个字符是在某个特定范围内的,这时正则表达式就提供了字符组来解决这个问题。"[dt]"中括号似乎特殊的标记,用以划定属于组内的字符的界限,它表示要匹配d或者匹配t。2.在字 阅读全文
posted @ 2011-04-22 10:07 雁北飞 阅读(4156) 评论(0) 推荐(0) 编辑
摘要: 关于接口的继承MSDN上面有这么一句话:“接口本身不提供类或结构能够以继承基类功能的方式继承的任何功能。 但是,如果基类实现接口,派生类将继承该实现。 派生的类称为隐式实现接口。”这句话怎么理解。 先定义两个接口: 定义一个类,实现InterfaceBView Code public interface InterfaceA { void InterfaceA_Method(); } public interface InterfaceB :InterfaceA { void InterfaceB_Method(); } public class ClassTest : InterfaceB, 阅读全文
posted @ 2011-04-21 09:17 雁北飞 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 聚簇索引和非聚簇索引的一个标志性区别就是聚簇索引的叶节点对应着数据页,从中间级的索引页的索引行直接对应着数据页。而非聚簇索引的索引B+树叶节点不是直接指向数据页面的。如果表有聚集索引或索引视图上有聚集索引,则行定位器是行的聚集索引键。如果聚集索引不是唯一的索引,SQL Server 将添加在内部生成的值(称为唯一值)以使所有重复键唯一。此四字节的值对于用户不可见。仅当需要使聚集键唯一以用于非聚集索引中时,才添加该值。SQL Server 通过使用存储在非聚集索引的叶行内的聚集索引键搜索聚集索引来检索数据行。View Code --创建一个测试数据表create table tb_index_. 阅读全文
posted @ 2011-04-14 15:33 雁北飞 阅读(17466) 评论(0) 推荐(1) 编辑
摘要: 一.文件: SQL Server 会将数据库中的数据映射为一组操作系统的文件,一个文件只能有一个数据库访问。 SQL Server 数据库具有三种类型的文件:主数据文件主数据文件是数据库的起点,指向数据库中的其他文件。每个数据库都有一个主数据文件。主数据文件的推荐文件扩展名是 .mdf。次要数据文件除主数据文件以外的所有其他数据文件都是次要数据文件。某些数据库可能不含有任何次要数据文件,而有些数据库则含有多个次要数据文件。次要数据文件的推荐文件扩展名是 .ndf。日志文件日志文件包含着用于恢复数据库的所有日志信息。每个数据库必须至少有一个日志文件,当然也可以有多个。日志文件的推荐文件扩展名是. 阅读全文
posted @ 2011-04-14 12:02 雁北飞 阅读(887) 评论(0) 推荐(0) 编辑
摘要: Index Seek就是SQL在查询的时候利用建立的索引进行扫描,即先扫描索引节点,即遍历索引树,在查找到相应叶子节点后,对于聚簇索引是直接取值叶子节点,而对于非聚簇索引是根据叶子节点中rowid去查找相应的行。而对于Index Scan是从头到位遍历整张数据表的所有行,从头到尾,因此在数据量很大时效率并不是很高(在Index是聚簇索引的情况,在是非聚簇索引的情况下呢)。 SQL有一个查询优化分析器Query Optimizer,其在执行查询之前首先会进行分析,当查询中有可以利用的索引时,其会优先分析使用Index Seek进行查询的效率,在使用Index Seek查询效率并不好的情况下,其会 阅读全文
posted @ 2011-04-14 00:22 雁北飞 阅读(8757) 评论(1) 推荐(3) 编辑
摘要: 最近很纠结,最近很悲催。工作和生活都不顺利。工作,貌似从毕业到现在就一直不顺。去年三月一号开始工作,9月份离职。除了做一个购物网有学一些东东之外,其他都没有,开发软件的方式估计找不到第二家。反编译别人的代码,可是别人的代码加混淆器,于是乎,工作的任务就是修改哪些经过混淆器混淆的变量名和函数名。上司比自己早毕业一年,开发过程中基本没给我什么指点,后来慢慢知道为什么不指点的原因.......。到厦门,来到现在的公司,情况稍微好些了。项目经理虽然严格,但是碰到问题还是很耐心的解答,经过指点和实际的项目开发,真正明白了web开发的概念,在认识上有了些进步,项目经理是工作中遇到的第一个该感谢的人。可是. 阅读全文
posted @ 2011-04-13 20:45 雁北飞 阅读(184) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 12 下一页