Xxencode编码,也是一个二进制字符转换为普通打印字符方法。跟UUencode编码原理方法很相似,唯独不同的是可打印字符不同。通个UUencode编码,我们知道它有个缺点就是,64个可打印字符中,有很多的特殊字符。而XXencode编码方法,对64个原字符有做规范。这里它有跟Base64类型了。都有指定可打印字符范围、及编号。Xxencode编码在上世纪后期,IBM大型机中得到很广泛的应用。现在逐渐被Base64编码转换方法所取代了。 Xxencode编码原理 XXencode将输入文本以每三个字节为单位进行编码。如果最后剩下的资料少于三个字节,不够的部份用零补齐。这三个字节共有24个Bit,以6bit为单位分为4个组,每个组以十进制来表示所出现的数值只会落在0到63之间。以所...
阅读全文
UUencode编码起先用在unix网络中,先是Unix系统下将二进制的资料借由uucp邮件系统传输的一个编码程式,也是一种二进制到文字的编码。不属于MIME编码中一员。它也是定义了用可打印字符表示二进制文字一种方法,并不是一种新的编码集合。主要解决,二进制字符在传输、存储中问题。它早期在电子邮件中使用较多,最近这些年来基本上被MIME 中Base64所取代了。E-mail中一般采用UU、MIME、BINHEX三种编码标准! 我想,了解下这种编码将二进制字符转换为可打印字符实现思路!对我们以后做类似处理工作,应该会有很多的启示。 UUencode编码过程 Uuencode将输入资料以每三个字节为单位进行编码,如此重复进行。如果最后剩下的资料少于三个字节,不够的部份...
阅读全文
Base64编码,是我们程序开发中经常使用到的编码方法。它是一种基于用64个可打印字符来表示二进制数据的表示方法。它通常用作存储、传输一些二进制数据编码方法!也是MIME(多用途互联网邮件扩展,主要用作电子邮件标准)中一种可打印字符表示二进制数据的常见编码方法!它其实只是定义用可打印字符传输内容一种方法,并不会产生新的字符集!有时候,我们学习转换的思路后,我们其实也可以结合自己的实际需要,构造一些自己接口定义编码方式。好了,我们一起看看,它的转换思路吧! Base64实现转换原理 它是用64个可打印字符表示二进制所有数据方法。由于2的6次方等于64,所以可以用每6个位元为一个单元,对应某个可打印字符。我们知道三个字节有2...
阅读全文
Quoted-printable 可译为“可打印字符引用编码”、“使用可打印字符的编码”,我们收邮件,查看信件原始信息,经常会看到这种类型的编码! 最多时候,我们在邮件头里面能够看到这样的编码!Content-Transfer-Encoding:quoted-printable
它是多用途互联网邮件扩展(MIME) 一种实现方式。其中MIME是一个互联网标准,它扩展了电子邮件标准,致力于使其能够支持非ASCII字符、二进制格式附件等多种格式的邮件消息。目前http协议中,很多采用MIME框架!quoted-printable 就是说用一些可打印常用字符,表示一个字节(8位)中所有非打印字符方法!
Quoted-printable编码方法
任何一个8位的字节值可编码为3个字符:一个等号"="后跟随两个十六进制数字(0...
阅读全文
这些编码,早些时候在一些应用软件中经常看到,估计很多朋友也看到了,这些编码了!
从这个图,我们可以看到这类编码应用很广泛,那么我们一起看看,iso-8859-1字符集,到底是什么样字符集,有那些字符!为什么,它应用可以这么广泛!
计算机上面流行第一个字符集,是ascii码,是0-127 一个128字符。每个字符在里面有个对应编号,分别是0-127。如果用二进制表示,刚好是7位。这个字符集,在前期表示英文字符已经足够。后来,随着计算机普及,越来越多国家(欧洲),开始应用计算机,他们发现7位,共128字符。已经不能描述他们常用的字符了。因此想到要兼容ascii字符集,就指定了扩展ASCII字符集。最多是0-255,256个字符。其中0-127 128字符及位...
阅读全文
定义和用法 head头标签里面,有另一个不起眼的标签。那就是:Link标签。<link> 标签的作用是定义文档与外部资源的关系,最常用的是链接样式表。
<head>
<link rel="stylesheet" type="text/css" href="header.css" />
</head>以上是链接样式表,这是常用的方法。其实它还可以做文件导航、以及seo方面都可以有用途。我们继续往下吧!
Link属性介绍
属性
值
描述
rel
alternateappendixbookmarkchaptercontentscopyrightglossaryhelphomeindexnextprevsectionstartstylesheetsubsectionicon (后来补充)
定义当前文档与被链接文档之间的关系
rev
alternateappendixbookmarkchaptercontentscopyrightglossaryhelpho...
阅读全文
meta标签,是在head标签里面,一般用做页面描述的。它的内容,用来描述页面一些信息的,如类型、编码、作者、简介等!虽然,它不作为页面布局显示,但实际上用途非常广的!具体的html定义在:meta定义 meta组成部分 meta标签共有两个属性,它们分别是http-equiv属性和name属性,不同的属性又有不同的参数值,这些不同的参数值就实现了不同的网页功能。 name属性主要用于描述网页,与之对应的属性值为content,content中的内容主要是便于搜索引擎机器人查找信息和分类信息用的。 http-equiv相当于http的文件头作用,它可以向浏览器传回一些有用的信息,以帮助正确和精确地显示网页内容,与之对应的属性值为content,content中的内...
阅读全文
这里说的正则表达式优化,主要是针对目前常用的NFA模式正则表达式,详细可以参考:正则表达式匹配解析过程探讨分析(正则表达式匹配原理)。从上面例子,我们可以推断出,影响NFA类正则表达式(常见语言:GNU Emacs,Java,ergp,less,more,.NET语言, PCRE library,Perl,PHP,Python,Ruby,sed,vi )其实主要是它的“回溯”,减少“回溯”次数(减少循环查找同一个字符次数),是提高性能的主要方法。 我们来看个例子: 源字符串:<script type="text/javascript">adsfadfsdasfsdafdsfsadfsa</script> 匹配要求,匹配<script….>….</script>标签里面所有内容,包括改标签 常见写法(1),因为<script后面...
阅读全文
很多时候,一个web站点,选择什么样的字符编码,我们不会太过在意的。象中文网站,我们一般用gb2312,gbk,gb18030,也可以用utf-8。但是,可能我们不知道,选择不同编码,可能因此导致程序本身设计缺陷。 多字节编码由来 我们先来看看最常用的,最小字符集是ascii,对应的二级制可以表示为:00-7F 编码 。它也是我们计算机使用最早通用的字符集。前期几乎可以表示所有英文字符。后来,更多使用计算机国家加入后,我们就想在计算机中表示中文字符。我们知道常见中文就有7000多个字符。ascii码就只有128字符,只有0-127编码位置,远远不够用了。因此,我们就开始制作更大字符集,并且保证兼容ascii编码。要支持更多字符,选择更大字符集。我们只能...
阅读全文
前面我们知道正则表达式有很多元字符表示匹配次数(量词),都是可以重复匹配前面出现的单个字符次数。有时候,我们可能需要匹配一组多个字符一起出现的次数。这个时候,我们需要分组了。就是用小括号来括起这些字符,指定子表达式(也叫做分组)。然后你就可以指定这个子表达式的重复次数了,你也可以对子表达式进行其它一些操作。这个时候,可以把括号中一组字符,看作一个整体了。 分组模式举例说明 如:查找字符串中,连续出现多个win字符串的字符。可以这样完成
<?php
$str = "this is win winwindows!";
preg_match_all("/(win)+/",$str,$marr);
var_dump($marr);
不用分组模式...
阅读全文