自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

翻译 Python中的正则表达式(5)

修改字符串到目前为止,我们已经简单实现了字符串的静态搜索;另外,正则表达式也常常用于通过不同的方式修改字符串,使用的函数如下:方法或属性用途split()将字符串分割为列表,是在正则表达式匹配的地方进行分割。sub()寻找所有匹配的子串,并将它们替换为指定的字符串subn

2012-09-18 17:44:18 3008

翻译 Python中的正则表达式(4)

最近实验太紧张了,没有时间再来看这些语法上的东西。------------------------分组 很多情况下你需要除了是否匹配以外的其他信息,正则表达式经常用于将字符串分解为子串以匹配不同的成分。例如,一个RFC-822头信息可以分解为一个头名和一个值,并通过:来连接,如下:From:author@example.comUser-Agent

2012-09-16 21:28:19 1957

翻译 Python中的正则表达式(3)

<!--@page {margin:2cm}p {margin-bottom:0.21cm}-->模块级别的函数<!--@page {margin:2cm}p {margin-bottom:0.21cm}-->不必每次都先创建样式对象再调用函数,re模块同时提供了高层次的函数如match(),search(),findall(

2012-09-09 11:06:14 2436

翻译 Python中的正则表达式(2)

正则表达式的使用 学习过最简单的正则表达式的规则后,如何在实际中运用呢?Python中的re模块提供了正则表达式引擎的接口,允许用户将表达式编译成对象,然后再进行匹配。 正则表达式的编译 将正则表达式编译成格式对象,此对象含有不同的操作函数,如查找或子串替换等。 >>> import re >>> p = re.compile('ab*') >>> print

2012-09-07 18:05:26 909

翻译 Python中的正则表达式(1)

写这个系列是为了整理在Python中学习正则表达式的知识。其实在Linux Shell、PHP以及Qt的学习中都接触过正则表达式,但是由于笔记做得不好,所以经常到了使用的时候翻来翻去,很是麻烦,所以把知识梳理一下。本文主要翻译自Python标准库手册中的指南,但是没有逐字句地翻译,它比标准库中的re模块相应介绍要简单一些,也更容易看懂。-----------------------------

2012-09-07 14:44:35 1032

原创 《Effective C++》读后感

从八月初在当当上订上这本书,到现在九月初把这本书粗粗读完一遍,期间大概一个月时间,平均每天读一个条款多一点。基本上,每个条款,除了个别的细节外,都能读明白,大致上也都知道“所以然”。但是,如果现在让我合上书,写上一段代码,恐怕这些理解还显得肤浅——毕竟”看“和”写“是两码事,程序员归根结底还是要去”创造“的。全书55个条款,可以看成55节,分为9章,作者的语言相对平实,思维有些跳跃,而且主要是

2012-09-04 10:55:02 891

原创 《Effective C++》读书笔记之item52:写了placement new也要写placement delete

1.当在类中声明了一个placement new(一个特定位置上的new),它接受了除std::size_t外的其他变量作为参数,则必须同样声明一个placement delete并且其参数与placement new相同以取得对应关系,这样当内存分配失败时C++编译器将调用与placement new相匹配的placement delete归还内存。注意placement delete只有在

2012-09-03 21:06:40 609

原创 《Effective C++》读书笔记之item51:编写new和delete时需固守常规

1.当用户自定义operator new时,应当满足以下要求:(1)operator new应当包含一个无穷循环,并在其中尝试分配内存,如果分配失败,就应当调用new-handler。(2)同时它应当有能力处理0-byte申请,一种常见做法是将它视为1-byte申请。C++规定,即使客户要求0字节,operator new也应该返回一个合法指针。(3)类专属版本的operator ne

2012-09-03 20:34:57 544

原创 《Effective C++》读书笔记之item50:了解new和delete的合理替换时机

1.C++标准程序库中的operator new和operator delete一般情况下能够满足需要,但是如果为了以下目的,可以定制自己版本的operator new和operator delete:检测运用上的错误:比如underrun(写入点在分配区块起点之前)和overrun(写入点在分配区块尾端之后)错误,可以自行定义operator new以超额分配内存,在客户所需要的内存前后

2012-09-03 13:01:32 614

原创 《Effective C++》读书笔记之item49:了解new-handler的行为

1.new_handler函数:当operator new或operator new[]分配内存失败时调用的函数。set_new_handler函数:试图分配更多内存以足够使用,成功时会返回,否则会抛出一个bad_alloc异常(或其派生类对象)或调用cstdlib的abort()或exit()函数强制退出。参考资料:http://www.cplusplus.com/reference/s

2012-09-02 21:58:27 634

原创 《Effective C++》读书笔记之item53:不要轻忽编译器的警告

1.严肃对待编译器发出的警告信息,努力在编译器的最高(最严苛)警告级别下争取“无任何警告”。2.不要过度依赖编译器的报警能力,因为不同的编译器对待事情的态度并不相同。代码一旦移植,原来倚赖的警告信息有可能消失。

2012-09-02 19:18:34 515

原创 《Effective C++》读书笔记之item54:让自己熟悉包括TR1在内的标准程序库

1.C++98中的标准程序库包括:STL(标准模板库):包括容器、迭代器、通用算法、函数对象、适配器(容器适配器和函数对象适配器)。 输入输出流:包括用户自定缓冲功能、国际化IO以及预定义的对象cin、cout、cerr和clog。 国际化支持:包括多区域支持,促进unicode。 数值处理:包括数值模板和纯数值数组。 异常:一个异常处理体系。 C89标准程序库。 2.TR1表示Tec

2012-09-02 19:13:55 685

原创 《Effective C++》读书笔记之item55:让自己熟悉Boost

1.Boost是一个社群,也是一个网站,它提供免费、源代码开放、同行复审的C++程序库。Boost的开发者很多来自C++标准委员会,在C++标准化过程中扮演深具影响力的角色。2.Boost提供许多TR1组件的实现。PS:Boost维基百科条目:http://zh.wikipedia.org/wiki/Boost_C++_Libraries 。有空学习一下Boost,越学C++越觉得这门语言

2012-09-02 19:06:48 556

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除