存档

作者存档

一个红宝背单词的软件

2010年8月18日

GRE词汇终结者

pros: 是红宝书的扫描版,设置六秒钟背一个单词的情况下,4个小时能背完一遍单词,比拿本厚厚的书有效率的多。

cons: 词汇似乎和最新版的红宝比有些差距,没有更新这么快吧~

价格:38.88一套

试用版软件可以背几个单词

http://www.cloudcrown.net/viewthread.php?tid=19&extra=page%3D1

gre-vocabulary-terminator-604

Jacob 默认

正则表达式笔记

2010年5月24日

原文:

http://deerchao.net/tutorials/regex/regex.htm

笔记:


\b  代表着单词的开头或结尾,也就是单词的分界处。虽然通常英文的单词是由空格,标点符号或者换行来分隔的,但是\b并不匹配这些单词分隔字符中的任何一个,它只匹配一个位置。
.是另一个元字符,匹配除了换行符以外的任意字符。
*同样是元字符,不过它代表的不是字符,也不是位置,而是数量——它指定*前边的内容可以连续重复使用任意次以使整个表达式得到匹配
.*连在一起就意味着任意数量的不包含换行的字符
+是和*类似的元字符,不同的是*匹配重复任意次(可能是0次),而+则匹配重复1次或更多次。
?重复零次或一次
{n}重复n次
{n,}重复n次或更多次
{n,m}重复n到m次
\d是个新的元字符,匹配一位数字(0,或1,或2,或……)。
-不是元字符,只匹配它本身——连字符(或者减号,或者中横线,或者随你怎么称呼它)。
\s匹配任意的空白符,包括空格,制表符(Tab),换行符,中文全角空格等。
\w匹配字母或数字或下划线或汉字等。
^匹配字符串的开始
$匹配字符串的结束
[]指定一个字符范围
|分枝条件
字符转义:deerchao\.net匹配deerchao.net,C:\\Windows匹配C:\Windows。
反义:
\W      匹配任意不是字母,数字,下划线,汉字的字符
\S     匹配任意不是空白符的字符
\D     匹配任意非数字的字符
\B     匹配不是单词开头或结束的位置
[^x]     匹配除了x以外的任意字符
[^aeiou]     匹配除了aeiou这几个字母以外的任意字符
后向引用:
捕获:
(exp)      匹配exp,并捕获文本到自动命名的组里
(?<name>exp)     匹配exp,并捕获文本到名称为name的组里,也可以写成 (?’name’exp)
(?:exp)     匹配exp,不捕获匹配的文本,也不给此分组分配组号
零宽断言:
(?=exp)      匹配exp前面的位置
(?<=exp)     匹配exp后面的位置
(?!exp)     匹配后面跟的不是exp的位置
(?<!exp)     匹配前面不是exp的位置
注释:
(?#comment)      这种类型的分组不对正则表达式的处理产生任何影响,用于提供注释让人阅读
贪婪与懒惰:
*?      重复任意次,但尽可能少重复
+?     重复1次或更多次,但尽可能少重复
??     重复0次或1次,但尽可能少重复
{n,m}?     重复n到m次,但尽可能少重复
{n,}?     重复n次以上,但尽可能少重复
其他:
\a      报警字符(打印它的效果是电脑嘀一声)
\b     通常是单词分界位置,但如果在字符类里使用代表退格
\t     制表符,Tab
\r     回车
\v     竖向制表符
\f     换页符
\n     换行符
\e     Escape
\0nn     ASCII代码中八进制代码为nn的字符
\xnn     ASCII代码中十六进制代码为nn的字符
\unnnn     Unicode代码中十六进制代码为nnnn的字符
\cN     ASCII控制字符。比如\cC代表Ctrl+C
\A     字符串开头(类似^,但不受处理多行选项的影响)
\Z     字符串结尾或行尾(不受处理多行选项的影响)
\z     字符串结尾(类似$,但不受处理多行选项的影响)
\G     当前搜索的开头
\p{name}     Unicode中命名为name的字符类,例如\p{IsGreek}
(?>exp)     贪婪子表达式
(?<x>-<y>exp)     平衡组
(?im-nsx:exp)     在子表达式exp中改变处理选项
(?im-nsx)     为表达式后面的部分改变处理选项
(?(exp)yes|no)     把exp当作零宽正向先行断言,如果在这个位置能匹配,使用yes作为此组的表达式;否则使用no
(?(exp)yes)     同上,只是使用空表达式作为no
(?(name)yes|no)     如果命名为name的组捕获到了内容,使用yes作为表达式;否则使用 no
(?(name)yes)     同上,只是使用空表达式作为no

例子:
\bhi\b.*\bLucy\b的意思就很明显了:先是一个单词hi,然后是任意个任意字符(但不能是换行),最后是Lucy这个单词。
0\d\d-\d\d\d\d\d\d\d\d匹配这样的字符串:以0开头,然后是两个数字,然后是一个连字号“-”,最后是8个数字(也就是中国的电话号码。当然,这个例子只能匹配区号为3位的情形)。
0\d{2}-\d{8}。 这里\d后面的{2}({8})的意思是前面\d必须连续重复匹配2次(8次)。
\d{5}-\d{4}|\d{5}这个表达式用于匹配美国的邮政编码
\(0\d{2}\)[- ]?\d{8}|0\d{2}[- ]?\d{8}这个表达式匹配3位区号的电话号码,其中区号可以用小括号括起来,也可以不用,区号与本地号间可以用连字号或空格间隔,也可以没有间隔
(\d{1,3}\.){3}\d{1,3}是一个简单的IP地址匹配表达式。
字符类来描述一个正确的IP地址:((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)。
\S+匹配不包含空白符的字符串。

<a[^>]+>匹配用尖括号括起来的以a开头的字符串。
\b(\w+)\b\s+\1\b可以用来匹配重复的单词,像go go, 或者kitty kitty。这个表达式首先是一个单词,也就是单词开始处和结束处之间的多于一个的字母或数字(\b(\w+)\b),这个单词会被捕获到编号为1的分组中,然后是1个或几个空白符(\s+),最后是分组1中捕获的内容(也就是前面匹配的那个单词)(\1)。

你也可以自己指定子表达式的组名。要指定一个子表达式的组名,请使用这样的语法:(?<Word>\w+)(或者把尖括号换成’也行:(?’Word’\w+)),这样就把\w+的组名指定为Word了。要反向引用这个分组捕获的内容,你可以使用\k<Word>,所以上一个例子也可以写成这样:\b(?<Word>\w+)\b\s+\k<Word>\b。

Jacob 默认

DD-WRT上运行Optware最简单的方法,在华硕N16上测试通过

2010年5月22日

这是一个最新的,最简单的在路由上使用Optware的方法, 建议你使用一个带usb的路由,以及最新的DD-Wrt版本。
USB版本的用户,请不要用JFFS2,禁用它。另外有些服务很占CPU资源,比如Twonky,使用它们请确保你的硬件足够强大。

下面以DD-WRT的Mega版本为例,演示如何安装Optware。

首先,准备一个usb存储器,可以是u盘,可以是移动硬盘。格式化城ext3格式。因为这个格式支持最好。
分区格式化可以用linux系统,或者xp下用Paragon.Partition.Manager.Professional。

在Services -> USB把所有support都enable。
Disk Mount Point设置成/opt,保存重启。

telnet或者ssh进入路由,用putty工具。
执行mount,可以见到如下提示
root@DD-WRT:~#mount
rootfs on / type rootfs (rw)
/dev/root on / type squashfs (ro)
none on /dev type devfs (rw)
proc on /proc type proc (rw)
ramfs on /tmp type ramfs (rw)
devpts on /proc/bus/usb type usbfs (rw)
/dev/scsi/host0/bus0/target0/lun0/part1 on /opt type ext3 (rw)
root@DD-WRT:~#

证明硬盘已经挂在上。

用以下命令安装Optware
wget -O /tmp/prep_optware http://wd.mirmana.com/prep_optware
sh /tmp/prep_optware

这个过程大概需要10-20分钟。
安装好后过一分钟重启路由。
启动好后一分钟后登陆ssh或者telnet
登陆后用mount查看磁盘挂载情况,用df -h查看磁盘容量。

执行service命令可以看到当前服务运行情况
service命令可带参数见下:
service - show all services (enabled/disabled)
service <service name> - if “status” parameter is supported, will show service status, otherwise will show whether specified service is running
service <service name> on - Enable the script, allowing execution (chmod +x  /opt/etc/init.d/S<servicescript>)
service <service name> off - Disable the script, disallowing execution (chmod -x  /opt/etc/init.d/S<servicescript>)
service <service name> start - Start/execute the script, as long as service is enabled (i.e. permissions allow execution)
service <service name> stop Stop/kill the script, if the service is running
service <service name> restart Stop/kill the script, if the service is running, and then start/execute the script, as long as service is enabled
service <service name> <parameter> - Run the script with the parameter.

我们首先要启用xinetd,这个打印服务需要
service xinetd on
service xinetd start

Twonky很占cpu,禁用之
service twonky stop
service twonky off

OK,到此为止,Optware安装完成,试试打印,bt呗~

要用打印功能,要开启Watchprinter

service watchprinter on

service watchprinter start

试用结果:

无线打印10M的PDF文件完美,BT下载全速3M/s一夜无死机,内存占用90M/128M

Jacob 技术 , ,

华硕Asus RT-N16路由刷DD-WRT,TOMATO等第三方固件

2010年5月22日
asus_rt-n16_product

asus_rt-n16_product

华硕的RT-N16是好东西,国内买1000多块,我80美刀拿下的。

资料列下:

BCM4716的CPU,主频高达480M,可以超频至533M
32M的Flash
128M的DDR2内存
支持高达30W的并发数
带2个USB2.0接口
官方的固件就可以ipkg安装oleg的软件包,完全不需要刷DD之类的东东
这种配置别说嵌入式Linux了,就连windows都能跑了

OK, 说说怎么刷第三方固件。

这个路由国内少见,资料也少,英文资料的思路大多是,先刷dd的mini版,然后restore factory setting。就可以刷mega版和tomato了,刷好以后还要restore factory setting。

我的做法如下:

1. 在asus的固件下刷mini版,如下

dd-wrtv24-13491_newd-2_k26_mini_rt-n16

2. Administration - Factory Defaults

3.登录到ssh或者telnet,执行nvram get http_passwd,获取md5加密的密码,如果你打算刷tomato的话,要记住这个密码,是第一次登陆tomato的密码。

4. 刷Tomato或dd mega版

tomato的登陆用户名是root,密码是刚才记录下来的。如果要刷其他dd不用这么麻烦,因为dd在第一次登陆的时候可以重置用户名密码。

dd-wrtv24-14311_newd-2_k26_big

tomato-ndusb-9042rtn16-beta02-ext

不要reload factory default否则会有各种各样的问题

这样做出来的tomato和dd mega所有功能正常,可以做repeater,可以做client,或者bridge

Jacob 技术 , ,

学做seo,开了个新网站

2010年5月17日

成功在Windows7(64位)下安装HFSS11

2010年4月10日

此方法使用于win7 32位,64位,vista32位,64位的HFSS安装。好处是能用超过4G的内存,速度貌似有所提高。

1、下载HFSS11及其破解补丁(自己找)。

2、解压缩HFSS安装文件,在命令行里进入解压缩后的目录,执行setup.exe /z ignore_os, 提示不支持此系统,按确定跳过。

3、安装过程中需要license文件,在破解文件包里有。

4、安装完成还不可以使用,提示license错误。将安装后的目录,对我来说是c:\program files(x86)\Ansoft\HFSS11,复制到另外一台xp的电脑上,将破解文件Ansoftfix.com复制到这个目录,运行之。

5、复制回并覆盖win7电脑。

试用24小时暂时没有问题。

Jacob 技术

lighttpd下的301重定向

2010年4月7日

步入正题,有关301重定向的问题,网上一大堆,大都是差不多的文章。

资料基本上都是讲apache, ASP, PHP, JavaScript等实现301重定向的方法的,很少有关于lighttpd的资料

我的要求是,不仅是首页url的重定向,整个网站里第一个url都要能重定向到对应的页面上,而不会出现404 page not found。而事实上,网上教你301重定向的方法的,基本上都是首页的重定向,所以这个对我来说没有意义。

几种301重定向实现方法的利弊:

ASP: 几百年前我就不用了,想用也用不了。

PHP:简单,但是它只能实现文件的跳转,目录就不行了,放弃。

JavaScript:简单,但会被搜索引擎惩罚,放弃。

DNS:这个就是转发了,只能定向首页,无用。

Apache:很完美,规则就一句:

RedirectMatch permanent ^/(.*)$ http://www.newdomain.com/$1

直接把这句话放网站根目录下的.htaccess里就行了。

以上所有方法都不能满足我的要求,而且我不想换回apache,只能去探索Lighttpd的方法了。还好,没多会就找到了,也是一句话:

$HTTP["host"] == “www.olddomain.com” {
url.redirect = (
“^/(.*)” => “http://www.newdomain.com/$1″,
)
}

好了,关键是这句话放在什么地方,Lighttpd是没有.htaccess文件的,只能放在/etc/lighttpd/lighttpd.conf里面。这时候要注意,如果你的lighttpd.conf里面有rewrite规则的话,有可能不成功,要把上面的 redirect规则放在这个文件的最前面。保存文件后在终端重启Lighttpd:service lighttpd restart.

Jacob 建站

换一种思路,在国内也能用Google Checkout

2009年4月24日

最近在研究VOIP,这方面美国比较强势,但是好多公司都用第三方系统作为支付手段,Google checkout 和Paypal用的比较多,Checkout是Google推出的一种国际支付网关,可是不支持中国大陆地区的信用卡,当然我们也还是有方法可以对付的:)

具体方法是:

申请的时候在地区中选择 HongKong, 然后 其他信息按照信用卡大陆地区的格式填写,然后OK

很奇怪系统会从信用卡里面扣除8港币,然后就验证通过了。最后可以在物流信息里面选择中国大陆的信息

至于8港币是干嘛被扣除的,我发邮件去问Google了,还没回复。。。。

更新:8港币用于认证信用卡,1-14天返还。转发Google的回信。

===========

Hello,

Thank you for your email. Please be assured that your credit card was not charged for 8 HKD.

The 8 HKD transaction you see pending from Google is actually a pending authorization request between our billing system and the bank that issued your credit/debit card.

Authorizations are the initial communication between our billing system and the bank’s billing system to ensure that your credit/debit card is valid and able to be used.

When you check your bank account or credit card statement, payment authorizations are often listed as pending. These transactions might remain in your account anywhere between 1-14 business days, depending on your card-issuing bank. Please keep in mind they are authorization requests only, not actual charges.

If you have any additional questions, please feel free to contact us again.

For general program or account questions, please review our Help Center at http://checkout.google.com/support

Sincerely,

Taylor
The Google Checkout Team

Jacob 技术

多普达手机USB充电器的小秘密,自制miniusb口充电器

2009年4月23日

手机充电器坏了,淘宝上买了一个飞毛腿的组装充电器,6块钱,拿回来发现竟然没法充电,具体现象是:充电灯不亮,电池信息的地方显示正在充电几秒钟后消失。

研究了一下,充电接口是miniusb接口,接口有5针,如下图所示,其中第1为电源,第5为地。剪开买来的电源,发现里面只有两根线,即电源和地,理论上这样确实可以充电了,但是为什么不行呢?会不会和另外两根线有关系?

于是找来一根usb数据线,剪下小头,红黑两根线分别接电源和地,另外两根绿白短接,重新查到手机上,问题解决。

综上所述,PPC系统判断是否充电的依据是数据线是否短接,网上找到的方案皆不正确。

undefined

Jacob 生活

一个很有意思的MM发的帖子,给大家乐乐~

2009年4月21日

转自太傻,但是太傻也是转的,说是来自战色,我还没找到原文~~

==============

这个MM很有意思,所以我特地从别的论坛把她的贴子扒过来,大家笑笑
她写了很多她和她男朋友相识相恋的趣事,我会不断更新的

跟他一起吃早餐,他让我吃煮鸡蛋,我不肯吃,他问为什么,我说小时候有次春游,我饿得厉害,一口吞了半个煮鸡蛋,被噎得厉害,老师还叫了救护车…说的时候我就觉得特别不舒服,不过他在一旁笑得特高兴…鼻涕都笑出来了…

陪他和几个朋友一起去唱歌,他们非要我唱…我从来不听流行音乐…完全不知道唱什么…特尴尬的跟他们说,我除了《我在马路边捡到一分钱》以外, 其他的都不会…结果BF又开始狂笑,竟然真给我找出来《我在马路边捡到一分钱》了…我硬着头皮唱…结果还唱错词…苦闷的我快哭出来 了…BF却抱着我笑…最后楞是滚到地上了…

还有,之前BF问我为什么 跟EX分手了。我其实是非常接受不了EX的小毛病,什么小拇指留长指甲,大庭广众之下抠鼻子,还有吃饭吧唧嘴…不过最终让我受不了而提出分手的原因 是…我们一起去看他父母,他竟然当着大家的面脱了鞋,脱了袜子,然后开始抠脚…更让我呕吐的是他抠完了还拿到鼻子旁闻了闻…跟BF说完,BF 又开始狂笑…我觉得这是挺痛苦的事…毕竟我跟EX交往的时候也很认真,没打算为了他这些小毛病分手…只是后来实在实在受不了了…

另外,我妈妈脾气比较暴躁,我虽然是个女孩子,小时候不少挨打。带BF去我小时候住的地方去看看,路上就说我小时候都在什么地方玩,以前什么地方种了花之类的…然后走到一个破井盖旁边,我突然想起一件特委屈的事,就是小时候有次考试没 考好,怕回家被我妈打,于是溜回家拿了些干粮,打算在家附近的公园里呆几天,算是离家出走。结果拿到食物以后路过那个破井盖,也不知道是谁那么缺德,把井 盖给掀开了,我一踩就掉到井里了,还给摔晕过去了…后来院子里的人把我送到医院去,我父母来看我的时候以为我是回家路上掉井里了,我妈还骂我怎么这么 不长眼啊…那么委屈的事,跟他说,又成笑话了!他笑了整整一个下午…

还有一次,有个朋友车祸之后出 院,大家去庆祝,就聊起来死前的感觉了。我就说小时候有次跟爸妈一起去康乐宫(一个有游泳池的地方),我爸的朋友送了我一个吹了气的大香蕉,我抱着那个香 蕉就跑到深水区去了,到了深水区,我本来想骑在香蕉上,谁知道刚骑上去,香蕉转了一圈…我就沉到水里去了…那时候根本不会游泳,就呛着水,一路在 水底下从深水区爬回浅水区…爬出来一看,我爸在按摩池里呢,根本都没注意到我,我挺委屈的跑过去告诉他我刚刚差点淹死,我爸就说了句“是吗?”然后就 没再理我…我觉得挺痛苦的回忆,让BF听到了,又成笑话了…这都已经3个多月了,昨天夜里他还笑到醒,还把我给摇晃起来,跟我说:“宝贝儿你太逗 了!从深水区爬出来的那个,再给我讲一次!”…

我妈那天跟BF聊天 聊得太高兴了,把我小时候所有的糗事都告诉我BF了,比如我小时候说话大舌头,这事我一直都不爱提,结果我妈告诉他我小时候管飞机叫“灰机”,管“改”叫 “逮”…我爸把我惹烦了,我就骑我爸头上问:“你逮不逮?你逮不逮?”现在只要看见飞机,BF就大喊我:“快看!灰机!”,只要我做错点小事,他就按 着我问:“你逮不逮?你逮不逮?”…

我那点自尊啊…泪…很

====================

Q: 一路在水底下从深水区爬回浅水区 这个怎么做到的,很佩服啊

A: 那时候真的是差点死了!小时候只要去康乐宫游泳,晚上肯定吃火锅。掉到水里的时候就想着千万别这时候死啊!所以拼了命的爬…印象中抬头时还看到一个胖 女人屁股底下冒出好多的气泡…N年后才明白人家是在放屁呢…从水里爬出来的时候鼻子,耳朵里全是水…第二天还觉得耳朵里是堵着的…而且刚 从水里出来的时候眼前还出现了白光…至今记忆犹新!

另外,我记得自己小时候吃火锅都要沙茶酱的,那次溺水之后吃沙茶酱吃得很难受,总觉得沙茶酱里面有游泳池味儿,所以至今再也不吃沙茶酱…

====================

A: 好奇一下,楼主你和你男朋友xxoo时候,他会不会笑场啊

Q: 汗一下…有…我跟BF第一次嘿咻就流鼻血…我本来以为是鼻涕,还使劲用胳膊噌,后来实在受不了了,我就跟他说:“你开下灯,我找找纸巾。 ”BF问:“要纸巾干什么,嘿咻就是为了弄脏。”…(此人无比YIN荡…经常说这种话…)。我说:“我一直在流鼻涕啊!”他立刻一把把我推一 边就开灯去了。灯一开我就看见自己胳膊红红的…当时没反应过来,还问他:“不会吧!不是第一次都是下面流血?”…他本来也被吓到了…后来在洗 手间帮我擦鼻血的时候好像缓过来了,然后开始笑…笑到最后用脑袋磕洗手台… 本来我还想收拾干净以后跟他继续呢…结果他一笑,我觉得特别恼!一生气,鼻血就开始止不住,而且最后还哭出来了…过分的是,他第二天跟我道歉的时 候还是止不住的笑,反正那天晚上是没做成…

====================

这件事真的让我哀怨了好久。上周四,我开车前突然右脚抽筋…真的是痛得要死!其实这是我有生以来第二次抽筋,当时自己也不知道发生什么情况了。我跟他 约好10分钟后在我公寓楼下见面,但就我当时的状况根本没法开车,所以就给他打电话,让他在我家前面多等一会儿,他还是有点人性的,听说我脚痛,就开车跑 来找我了。等他来了以后,非要我把鞋脱了让他看看,我拗不过他,就把鞋脱了…结果貌似是因为抽筋太严重,其他的脚趾头都很正常的立着,唯独2脚趾,都 弯下去了…我当时吓坏了…努力了半天,想动一动脚趾头,结果越动2脚趾就弯的越厉害,而且也疼的更厉害…疼得我后来受不了了,就开始掉眼 泪…他一开始也没说话,看着挺严肃的,就在那里抱着我的脚丫子…我也不知道自己脑子哪根筋搭错了,一边哭一边问他:“你不会因为我2脚趾萎缩就不 要我了吧?”问完以后他还没回答,我就有点小崩溃,突然“哇”的一声哭得特别夸张…也不打算听他回答我…心里认定了他肯定是因为我残疾了所以不要 我了…但他也肯定不好意思告诉我…他本来还想说什么,结果我还硬生生的打断他说:“别说!别说!真话假话我都不想听!”结果哭着哭着…脚不疼 了…2脚趾也立起来了…我自己发现以后开始囧…慢慢的也不哭了…然后就开始轮到他在一旁狂笑…笑得脸快戳到我脚丫子上了…晚上他 给他妈打电话,还跟他妈说:“NN今天脚抽筋,竟然问我,是不是她残疾了我就不要她了!”

我囧…我怎么知道那是脚抽筋啊!!我以为自己跟英国的那个霍金一样,会半身不遂呢…

====================

阅读全文…

Jacob 娱乐