C#中正则替换 MatchEvaluator委托的使用方法

MatchEvaluator表示在 Replace 方法操作过程中每当找到正则表达式匹配时都调用的方法。 需要接受一个函数做为其参数。 Func<Match, String> rowReplace = delegate(Match m) { string field = m.Groups[1].Value; return curRow.Field<string>(field); }; MatchEvaluator M = new MatchEvaluator(rowReplace); string template = LoadFile(“template.html”); template = Regex.Replace(template, @”\{([a-z0-9]+)\}”, M);

行香子·清夜无尘 [宋]苏轼

清夜无尘,月色如银。 酒斟时、须满十分。 浮名浮利,虚苦劳神。 叹隙中驹,石中火,梦中身。 虽抱文章,开口谁亲。 且陶陶、乐尽天真。 几时归去,作个闲人。 对一张琴,一壶酒,一溪云。

解决IE9中鼠标滚轮不能用的问题

系统是win7, 装完以后用Chrome做默认浏览器,一直没怎么注意IE。 今天用IE发现鼠标滚轮不能用,很奇怪。除了IE之外其他地方都是可以用的。在网上搜索了一下,下面的百度知道中找到的解决方法: 解决方法:点击“工具”(地址栏右面的的齿轮图标),在下拉菜单中打开Internet选项,切换到高级,找到“使用软件渲染而不是GPU”选项,勾选之后再次刷新页面或者重启IE。一般情况下问题就会解决。(英文版是点Tools – Internet Options – Advanced,然后勾选第一个“use software rendering instead of GPU rendering* ”) 如果还是没有解决有可能是由于第三方插件引起的,建议您先禁用加载项并再次尝试。即 Internet选项-程序-管理加载项,在里面禁用一些不必要的插件(右键-禁用)。(英文版:Tools – Internet Options – Manage add-ons,右键-disable)。 来源:http://zhidao.baidu.com/question/252768951.html 修改了Internet高级选项后就好了。  

mysql中一个简单的存储程过程

mysql中一个简单的存储程过程

需求: 在test数据库中有一个demo表,包含了A1,B1,B3,A2,B2,A3,…这样的字段。想要在查询时将字段排序输出,希望结果集的顺序为A1,A2,A3,B1,B2,B3…

bootmgr is compressed 解决方法

发现系统盘空间不够了,于是在C盘选择了“压缩磁盘以节省空间”,重启后发现进不去系统了。 屏幕显示: bootmgr is compressed Press Ctrl+Alt+Del to restart 我了个去,Win7竟然没有保护bootmgr,幸好我有USB启动的WinPE,重新启动电脑按F1进入CMOS设置 将USB启动设置为优先,保存重启进入PE 在C盘右键-属性,去掉“压缩磁盘以节省空间”的勾选,确认后重启,竟然还是进不了系统。 再次进PE,运行Windows启动修复工具,修复后重启进入CMOS将硬盘启动设置为优先。 重启进入后就好了。

HTML5 Canvas 2D arc方法使用说明

HTML5 Canvas 2D arc方法使用说明

先看一下2d上下文对象中关于arc接口的定义: void arc( in float x, in float y, in float radius, in float startAngle, in float endAngle, in boolean anticlockwise) 当使用一个canvas元素的getContext(“2d”)方法时,返回的是一个CanvasRenderingContext2D对象,其内部表现为笛卡尔平面坐标,并且左上角坐标为(0, 0),在本平面坐标中向右则x坐标值增加向下则y坐标值增加。 在arc接口中,前两个参数x,y指定了要绘制的圆弧的圆心坐标,radius是圆的半径,startAngle和endAngle指定了弧的起始和结束的角度,anticlockwise指定是否使用逆时针方向绘图。 示例: var canv = document.getElementById(´can´); if (canv.getContext) { var c = canv.getContext(´2d´); c.strokeStyle=´#00f´; c.beginPath(); c.arc(100,100,50,0,0.5*Math.PI, false); c.stroke(); }  

CentOS 6.0下安装配置Apache/Mysql/PHP环境

在虚拟机上安装了一个CentOS系统,简单配置了一下环境,现在可以正常运行PHP了。 配置过程中搜索了网上的资料,记录一下配置过程,供以后查阅。 CentOS 是基于 Red Hat Enterprise Linux (收费昂贵但口碑极佳) 的源代码再编译出来的免费版,继承了 Red Hat 优越的稳定性,而且又提供免费更新,因此在服务器提供商、中小型公司中装机量几乎是最大的一个 Linux。 下载安装CentOS:http://www.centos.org/modules/tinycontent/index.php?id=30   升级系统及应用程序: yum update 如何修改yum更新源:http://www.cnblogs.com/gbyukg/archive/2011/10/06/2199720.html 安装Mysql: yum install mysql yum install mysql-server chkconfig –levels 35 mysqld on service mysqld start 修改root帐号的密码: mysql_secure_installation 按照提示修改完成后,可以测试一下进入mysql控制台: mysql -p 能正常进入则进入下一步, 安装apache服务 Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。(摘录自百度百科) 安装: yum install httpd chkconfig –levels 35 httpd on service httpd start 安装完成后,可以用浏览器访问http://localhost/ [...]

HTML5 Canvas 2D API arc接口方法详细说明

HTML5 Canvas 2D API arc接口方法详细说明

当使用一个canvas元素的getContext(“2d”)方法时,返回的是一个CanvasRenderingContext2D对象,其内部表现为笛卡尔平面坐标,并且左上角坐标为(0, 0),在本平面坐标中向右则x坐标值增加向下则y坐标值增加。

理解js中的原型链,prototype与__proto__的关系

说到prototype,就不得不先说下new的过程。 我们先看看这样一段代码: <script type=”text/javascript”> var Person = function () { }; var p = new Person(); </script> 很简单的一段代码,我们来看看这个new究竟做了什么?我们可以把new的过程拆分成以下三步: <1> var p={}; 也就是说,初始化一个对象p。 <2> p.__proto__=Person.prototype; <3> Person.call(p);也就是说构造p,也可以称之为初始化p。 关键在于第二步,我们来证明一下: <script type=”text/javascript”> var Person = function () { }; var p = new Person(); alert(p.__proto__ === Person.prototype); </script> 这段代码会返回true。说明我们步骤2的正确。 那么__proto__是什么?我们在这里简单地说下。每个对象都会在其内部初始化一个属性,就是__proto__,当我们访问一个对象的属性 时,如果这个对象内部不存在这个属性,那么他就会去__proto__里找这个属性,这个__proto__又会有自己的__proto__,于是就这样 一直找下去,也就是我们平时所说的原型链的概念。 按照标准,__proto__是不对外公开的,也就是说是个私有属性,但是Firefox的引擎将他暴露了出来成为了一个共有的属性,我们可以对外访问和设置。 好,概念说清了,让我们看一下下面这些代码: <script type=”text/javascript”> var Person [...]

伪类与伪元素有什么不同?

在CSS3中,定义鼠标选中文字内容的背景色时,我们会用到::selection,从CSS参考手册中可以得知,这是一个伪对象(伪元素)选择器。 大家可能会想到在定义链接文字的样式时,有几种状态::link/:hover/:active/:visited,我们将这些状态的定义叫做伪类。阅读了《:before和::before的区别》一文后知道了单冒号(:)用于CSS3伪类,双冒号(::)用于CSS3伪元素。那么伪类与伪元素是如何区分的呢,我在网上查找了一些资料,引用如下: 《伪类和伪元素》 在CSS中,模式(pattern)匹配规则决定那种样式规则应用于文档树 (document tree)的哪个元素。这些模式叫着选择符(selector)。 一条CSS规则(rule)是选择符{属性:值;属性:值;}(selector {property:value;property1:value2;}),即选择符决定了{}中的声明(declaration)匹配哪个元素。 在CSS2.1中的选择符有: Pattern Meaning Described in section * Matches any element. Universal selector E Matches any E element (i.e., an element of type E). Type selectors E F Matches any F element that is a descendant of an E element. Descendant selectors E > F Matches any F [...]