当前位置:  编程技术>php
本页文章导读:
    ▪正则表达式的奥秘      1,正则表达式简介   (1)什么是正则表达式:是使用某种模式去匹配一类字符串的公式,它主要用于字符串的校验,分割,查找及替换操作。   (2)正则表达式的作用:替换.........
    ▪xmlhttp:open方法中的POST、GET参数的区别      1. get是从服务器上获取数据(会暴露客户端ip),post是向服务器传送数据。2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通.........
    ▪simsimi无线次数api      simsimi是一款聊天机器人,你发送内容会自动回复给你,并且回复的每一次都不一样的。支持多种语言的回复!!simsimi是韩国的一款app,你也可以体验他的网页版本。simsimi到底有多牛呢?目前.........

[1]正则表达式的奥秘
    来源:    发布时间: 2013-11-07

1,正则表达式简介

   (1)什么是正则表达式:是使用某种模式去匹配一类字符串的公式,它主要用于字符串的校验,分割,查找及替换操作。

   (2)正则表达式的作用:替换文本或者代码中的某些字符,编辑软件无法完成的查找和替换,可以使用正则表达式来完成几乎全部的文本查找和替换工作。

          正则表达式的强大功能源于它可以指定抽象模式来校验许多不同的字符序列。可以这定3种基本的抽象模式:

           1.可以出现的字符集       (如:字母,数字和下划线)

           2.可选择行的集合          (如:“com”,“net”或“org”)

           3.可重复的序列             (如:自少一个短时不多于8个字母字符)

       (将这3种模式按照不同的方式结合,就可以校验用户输入的电子右键地址格式是否正确;校验用户输入的日期格式是否正确;校验用户输入的身份证号格式是否正确等等  )

2,正则表达是基础

    (1)元字符:正则表达式由一些普通字符和一些元字符(metacharacters)共同组成,其中普通字符包括大小写的字母和数字,而元字符则具有特殊含义。

                  元字符是用来描述其前面的字符在匹配模式中出现的方式。元字符本身是单一的字符,但是不同或者相同的元字符组合起来可以构成大的元字符。表中介绍各元字符的含义

字符含义()将不同的祖父串组成一组,也称为子模式[ ]定义字符集合{}指定重复次数^在字符串的开始匹配或者表示不在某个字符集内$在字符传结尾匹配.匹配换行符(\n)之外的任意字符?重复零次或者一次*重复零次或者多次+重复一次或者多次\转换字符|或者选择分支的标识

                        正则表达式的语法是严格区分大小写的。

      (2)方括号表达式:可以用来定义一个字符集合,其含义是必须匹配该集合中的任意一个字符,定义方括号表达式的方式有一下两种:

             1.把所有的字符都列出阿来。        例如:方括号表达式”[1234567890]“可以与任何数字字符匹配,但是只能匹配一个字符。

             2.利用字符”—“来表示字符区间。   例如:方括号表达式”[0123456789abcdefABCDEF]“ 可以简写成方括号表达式”[0-9a-fA-F]“。

         (通常情况下,字符”-“都只是一个普通字符,只有在表达范围时才被作为元字符来使用。如:方括号表达式[-a-z]的第一个字符”-“只代表一个普通字符,而第二个是一个元字符。

           用来表示字母a到z的范围里)

           常用的方括号表达式:

字符含义[a-z]小写字母字符[A-Z]大写字母字符[a-zA-Z]大小写字母字符[0-9]数字字符[0-9\+\-\*\\]数字字符、加号、减号、乘号、除号[\f\r\n\t]空白字符

        (3)定位符:方括号表达式只能用来匹配一个字符,如“Y8”、“B3”、“A6”等。这里就需要使用定位符“^”与“$”  

                 定位符是用来描述字符串或单词的边界的,具体包括^("shift+6组合键")和$(美元符号)它们含义分别为在字符传的开始匹配和在结尾匹配。

                 灵活使用定位符和方括号可以完成功能不同的正则表达式。     如:“^[A-Z][0-9]$”可以用来校验由两个字符组成的字符串,并且该字符串要同时满足

                                                                                                      以大小写字母字符开头,以数字结尾的条件。

                元字符“^”如果出现在方括号表达式的里面,表示含义为否;如果出现在方括号外面,表示含义为字符串的开始。

       (4)量词:也称为限定符,用来指定字符必须要出现的次数,也就是说在指定重复模式时要使用量词。      量词具体包括*、+、?、{n}、{n,}、{n,m}共6种使用见表所示:        

本文链接


    
[2]xmlhttp:open方法中的POST、GET参数的区别
    来源:    发布时间: 2013-11-07

1. get是从服务器上获取数据(会暴露客户端ip),post是向服务器传送数据。
2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。
3. 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。
4. get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。
5. get安全性非常低,post安全性较高。但是执行效率却比Post方法好。 

建议:
1、get方式的安全性较Post方式要差些,包含机密信息的话,建议用Post数据提交方式;
2、在做数据查询时,建议用Get方式;而在做数据添加、修改或删除时,建议用Post方式;

 

1 问题描述:
xmlhttp:open方法,请求页面的时候,更新页面数据后,第2次拿到的结果还是上次的信息
2 解决办法:
改用POST方式
3 说明:
xmlhttp:open方法
创建一个新的http请求,并指定此请求的方法、URL以及验证信息
语法
oXMLHttpRequest.open(bstrMethod, bstrUrl, varAsync, bstrUser, bstrPassword);
参数
bstrMethod
http方法,例如:POST、GET、PUT及PROPFIND。大小写不敏感。
/*****
POST:用"POST"方式发送数据,可以大到4MB
GET:用"GET"方式发送数据,只能256KB
如果请求带有参数的化实用POST方式,POST方式将参数放置在页面的隐藏控件内
没有参数使用GET方式
对于请求的页面在中途可能发生更改的,也最好用POST方式
用GET方式可能会拿不到最新的信息
*****/
bstrUrl
请求的URL地址,可以为绝对地址也可以为相对地址。
varAsync[可选]
布尔型,指定此请求是否为异步方式,默认为true。如果为真,当状态改变时会调用onreadystatechange属性指定的回调函数。
bstrUser[可选]
如果服务器需要验证,此处指定用户名,如果未指定,当服务器需要验证时,会弹出验证窗口。
bstrPassword[可选]
验证信息中的密码部分,如果用户名为空,则此值将被忽略。

Example
下面的例子演示从服务器请求book.xml,并显示其中的book字段。
var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP.3.0");
xmlhttp.open("GET","http://localhost/books.xml", false); 没有参数且不会发生改变的用GET,否则用POST
xmlhttp.send();
var book = xmlhttp.responseXML.selectSingleNode("//book[@id=''''bk101'''']");
alert(book.xml);
备注
调用此方法后,可以调用send方法向服务器发送数据。

调用页面 
<script language="javascript" type="text/javascript"> 
function UpdateData() 

var ServerUrl = window.location.href; 
var str = ServerUrl.split("/"); 
var ServerUrl = "http://"+str[2]; 
var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
var serverURL=ServerUrl+"/GetTemp.aspx"; 
xmlhttp.Open("POST",serverURL, false); 
xmlhttp.Send("adst"); 
xmlhttp = null; 

</script> 
处理页面,得到传入的数据 
private string GetInput() 

System.IO.Stream s = Request.InputStream; 
int count = 0; 
byte[] buffer = new byte[1024]; 
StringBuilder builder = new StringBuilder(); 
while ((count = s.Read(buffer, 0, 1024)) > 0) 

builder.Append(Encoding.UTF8.GetString(buffer, 0, count)); 


return builder.ToString(); 
}

本文链接


    
[3]simsimi无线次数api
    来源:    发布时间: 2013-11-07

simsimi是一款聊天机器人,你发送内容会自动回复给你,并且回复的每一次都不一样的。支持多种语言的回复!!simsimi是韩国的一款app,你也可以体验他的网页版本。

simsimi到底有多牛呢?目前比较火的人人网小黄鸡,就是调用了simsim的数据,开发者用python写的,源代码到git上面可以下载到:https://github.com/hellokuku/xiaohuangji/

那我们怎么调用simsimi的api呢,你可以到simsimi网站上面申请,不过api是付费的,可以申请7天的试用期!根据网页版,模拟用户来不断发送请求调用一个免费的不限次数的api是最省钱有方便的了,不过速度会慢些!!

我做了一个api,你只要把字发送过来即可调用simsimi的数据并回复!!我用这个做一个接口来放到微信公众平台上面来,就有了一个微信公众平台的小黄鸡拉!!

http://xiaojiji.duapp.com/simsimi.php?key=关键词(这接口我屏蔽了回复的广告,simsimi被教的广告是太多了,屏蔽了http|qq|www|\.cn|\.com|\.net|\.org|微信|扣扣|Unauthorized|关注|加q|加扣|打炮|贱鸡|\.cc|加Q|约炮|微博|陌陌|QQ|电话|手机 等关键词的广告)

测试地址:

http://xiaojiji.duapp.com/ 

不限次数的小黄鸡api方便你来调用了!!

本文链接


    
最新技术文章:
▪PHP函数microtime()时间戳的定义与用法
▪PHP单一入口之apache配置内容
▪PHP数组排序方法总结(收藏)
▪php数组排序方法大全(脚本学堂整理奉献)
▪php数组排序的几个函数(附实例)
▪php二维数组排序(实例)
▪php根据键值对二维数组排序的小例子
▪php验证码(附截图)
▪php数组长度的获取方法(三个实例)
▪php获取数组长度的方法举例
▪判断php数组维度(php数组长度)的方法
▪php获取图片的exif信息的示例代码
▪PHP 数组key长度对性能的影响实例分析
▪php函数指定默认值的方法示例
▪php提交表单到当前页面、提交表单后页面重定...
▪php四舍五入的三种实现方法
▪php获得数组长度(元素个数)的方法
▪php日期函数的简单示例代码
▪php数学函数的简单示例代码
▪php字符串函数的简单示例代码
▪php文件下载代码(多浏览器兼容、支持中文文...
▪php实现文件下载、支持中文文件名的示例代码...
▪php文件下载(防止中文文件名乱码)的示例代码
▪解决PHP文件下载时中文文件名乱码的问题
▪php数组去重(一维、二维数组去重)的简单示例
▪php小数点后取两位的三种实现方法
▪php Redis 队列服务的简单示例
▪PHP导出excel时数字变为科学计数的解决方法
▪PHP数组根据值获取Key的简单示例
▪php数组去重的函数代码示例
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3