??xml version="1.0" encoding="utf-8" standalone="yes"?> 1。^\d+$ //匚w非负整数Q正整数 + 0Q?nbsp;
2。^[0-9]*[1-9][0-9]*$ //匚w正整?nbsp;
3。^((-\d+)|(0+))$ //匚w非正整数Q负整数 + 0Q?nbsp;
4。^-[0-9]*[1-9][0-9]*$ //匚w负整?nbsp;
5。^-?\d+$ //匚w整数
6。^\d+(\.\d+)?$ //匚w非负点敎ͼ正QҎ + 0Q?nbsp;
7。^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$ //匚w正QҎ
8。^((-\d+(\.\d+)?)|(0+(\.0+)?))$ //匚w非正点敎ͼ负QҎ + 0Q?nbsp;
9。^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$ //匚w负QҎ
10。^(-?\d+)(\.\d+)?$ //匚w点?nbsp;
11。^[A-Za-z]+$ //匚w?6个英文字母组成的字符?nbsp;
12。^[A-Z]+$ //匚w?6个英文字母的大写l成的字W串
13。^[a-z]+$ //匚w?6个英文字母的写l成的字W串
14。^[A-Za-z0-9]+$ //匚w由数字和26个英文字母组成的字符?nbsp;
15。^\w+$ //匚w由数字?6个英文字母或者下划线l成的字W串
16。^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$ //匚wemail地址
17。^[a-zA-z]+://匚w(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$ //匚wurl
18。匹配中文字W的正则表达式: [\u4e00-\u9fa5]
19。匹配双字节字符(包括汉字在内)Q[^\x00-\xff]
20。应用:计算字符串的长度Q一个双字节字符长度?QASCII字符?Q?br />
String.prototype.len=function(){return this.replace([^\x00-\xff]/g,"aa").length;}
21。匹配空行的正则表达式:\n[\s| ]*\r
22。匹配HTML标记的正则表辑ּQ?<(.*)>.*<\/\1>|<(.*) \/>/
23。匹配首格的正则表达式:(^\s*)|(\s*$)
* 正则表达式用?br />
* 1、^\S+[a-z A-Z]$ 不能为空 不能有空?nbsp; 只能是英文字?br />
* 2、\S{6,} 不能为空 六位以上
* 3、^\d+$ 不能有空?不能非数?br />
* 4?.*)(\.jpg|\.bmp)$ 只能是jpg和bmp格式
* 5、^\d{4}\-\d{1,2}-\d{1,2}$ 只能?004-10-22格式
* 6、^0$ 臛_选一?br />
* 7、^0{2,}$ 臛_选两?br />
* 8、^[\s|\S]{20,}$ 不能为空 二十字以?br />
* 9、^\+?[a-z0-9](([-+.]|[_]+)?[a-z0-9]+)*@([a-z0-9]+(\.|\-))+[a-z]{2,6}$邮g
* 10、\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*([,;]\s*\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*)* 输入多个地址用逗号或空格分隔邮?br />
* 11、^(\([0-9]+\))?[0-9]{7,8}$电话L7位或8位或前面有区号例如(022Q?7341628
* 12、^[a-z A-Z 0-9 _]+@[a-z A-Z 0-9 _]+(\.[a-z A-Z 0-9 _]+)+(\,[a-z A-Z 0-9 _]+@[a-z A-Z 0-9 _]+(\.[a-z A-Z 0-9 _]+)+)*$
* 只能是字母、数字、下划线Q必L@?同时格式要规?邮g
* 13 ^\w+@\w+(\.\w+)+(\,\w+@\w+(\.\w+)+)*$上面表达式也可以写成q样子,更精l?br />
14 ^\w+((-\w+)|(\.\w+))*\@\w+((\.|-)\w+)*\.\w+$
]]>
一个驻扎在天|的普通程序员Q当个PM,TL,CODER 是没有当过CEO?br />
My idiom:Where there is a will,there is a way!
注:加班写作Q{载请著名出处Q!
James Server也是一个邮件应用^台。James工程同时开发Apache Mailet API,q且James Server 是一个Mailet容器Q这点得邮件处理更Ҏ设计Q编写和部v自定义的应用E序。模块化和自定义是James的优点,它允许管理员d建强大易用的应用E序?/p>
James构徏在Avalon Application FrameworkQ这个框架促q了许多开发实践,例如面向lg开发和IOC。James囊括了Phoenix Avalon Framework containerQ它为James server奠定了强大和E_的基?/p>
q篇文档介绍了James的概念和James的实玎ͼq有安装、配|手册,为开发h员build James Server?/p>
I. James 概念
摘要(summary):
--The James Server
James 是一个开源项?Z创徏一个坚?灉|,强大的企业类服务,q可提供邮g和邮件相关的服务.也被设计为高可定制?允许理员去灉|配置James.
James Server 是构建在Avalon Framework上的.标准的James发行版本包括了Phoenix Avalon Framework 容器.除了为James提供坚固的服务架?Phoenix 的用允许James理员去部v它们自己的应用程序到容器?q些应用E序在邮件处理过E中能被调用.
James server的实现由一些完整的服务集合和相关的lg构成,集成在一?实现邮g解决Ҏ.q些lg描述如下.
--POP3 Service
POP3 协议允许用户去获取邮件消?普遍用于客户端下载和理邮g信息.
James是POP3服务的一个简单直接实?它与规范一致ƈ且最大化兼容通用的POP3客户?此外,James能让POP3客户端用SSL/TLSq接.
--SMTP Service
SMTP是在internet上发送和转移emali的标准方?James提供ZSMTP规范所有功能的实现,支持一些可选特?例如消息大小限制,SMTP验证,加密?客户/服务?通信.
--NNTP Service
NNTP用于客户端从新闻服务器存储和获取消息.James通过实现NNTP规范实现了服务的交互,q有为存储新L息所提供的仓?James单和直接的实?但支持一些额外的Ҏ?例如NNTP验证,加密?客户/服务?通信.
--FetchMail
FetchMail ,不像其他的Jameslg,q不是一个RFC的实?然?q个lg允许理去配|James,能够从更多的POP3服务获取Email和{U邮件到本地.q方便在不同的机器上的多个̎户合q件{Ud一个用?This is useful for consolidating mail delivered to a number of accounts on different machines to a single account.)
---The SpoolManager, Matchers, and Mailets
当James处理收来的邮件时,James从引擎上区分不同的服?SMTP,FecthMail)来{U邮?SpoolManager lg是James的邮件处理引?James的SpoolManagerlg是一个Mailet容器,It is these mailets and matchers that actually carry out mail processing.
--Repositories
James有许多不同的仓库d储消息数?email,news messages) 和用户信?用户仓库存储用户信息,包括用户名验证信息和别名.邮g仓库存储已被转移的消?Spool仓库存储正在被处理的消息.最?新闻仓库被用作存储新L?另外,他们存储什么类型的数据,仓库以数据存储在什么地Ҏ区分.?U存储类?-File,Database 和DBFile.
--RemoteManager
James提供一个简单的telnet-base 控制接口,通过q个接口你能d和删除用?配置每个用户的别名和forward addresses和停止服?
目标理的SMART原则Q即是:
1. 目标必须是具体的QSpecificQ;
2. 目标必须是可以衡量的QMeasurableQ;
3. 目标必须是可以达到的QAttainableQ;
4. 目标必须和其他目标具有相x(RelevantQ;
5. 目标必须h明确的截止期限(Time-basedQ;