http://harveyzeng.iteye.com/blog/1776991
DNS规定,域名中的标号都由英文字母和数字组成,每一个标号不超过63个字符,也不区分大小写字母。标号中除连字符(-)外不能使用其他的标点符号。级别最低的域名写在最左边,而级别最高的域名写在最右边。由多个标号组成的完整域名总共不超过255个字符。
由此匹配完整域名的正则表达式:
^(?=^.{3,255}$)[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+$
例如:baidu.com
匹配网址:
^(?=^.{3,255}$)(http(s)?:\/\/)?(www\.)?[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+(:\d+)*(\/\w+\.\w+)*$
例如: http://www.baidu.com
匹配http url:
^(?=^.{3,62})+(:\d+)*(\/\w+\.\w+)*([\?&]\w+=\w*)*$
例如: http://www.tetet.com/index.html?q=1&m=test
代码实例:
obj = query.searchinput;
reg = /^(?=^.{3,62})+$/;
if(!reg.test(obj)){
$("#verifytip").html('域名格式验证未通过或域名有错误!');
return;
}
正则表达式应用:
http://www.cnblogs.com/luluping/archive/2008/05/04/1181434.html
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<htmlxmlns="http://www.w3.org/1999/xhtml">
<head>
<Metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>
<title>Test</title>
<scripttype="text/javascript"language="javascript"src="jquery.js"></script>
<scripttype="text/javascript"language="javascript">
functionvalidata(){
if($("#username").val()==""){
document.write("请输入名字");
returnfalse;
}
if($("#password").val()==""){
document.write("请输入密码");
returnfalse;
}
if($("#telephone").val()==""){
document.write("请输入电话号码");
}
if($("#email").val()==""){
$("#email").val("shuangping@163.com");
}
}
functionisInteger(obj){
reg=/^[-+]?\d+$/;
if(!reg.test(obj)){
$("#test").html("<b>Pleaseinputcorrectfigures</b>");
}else{
$("#test").html("");
}
}
functionisEmail(obj){
reg=/^\w{3,}@\w+(\.\w+)+$/;
if(!reg.test(obj)){
$("#test").html("<b>请输入正确的邮箱地址</b>");
}else{
$("#test").html("");
}
}
functionisString(obj){
reg=/^[a-z,A-Z]+$/;
if(!reg.test(obj)){
$("#test").html("<b>只能输入字符</b>");
}else{
$("#test").html("");
}
}
functionisTelephone(obj){
reg=/^(\d{3,4}\-)?[1-9]\d{6,7}$/;
if(!reg.test(obj)){
$("#test").html("<b>请输入正确的电话号码!</b>");
}else{
$("#test").html("");
}
}
functionisMobile(obj){
reg=/^(\+\d{2,3}\-)?\d{11}$/;
if(!reg.test(obj)){
$("#test").html("请输入正确移动电话");
}else{
$("#test").html("");
}
}
functionisUri(obj){
reg=/^http:\/\/[a-zA-Z0-9]+\.[a-zA-Z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/;
if(!reg.test(obj)){
$("#test").html($("#uri").val()+"请输入正确的inernet地址");
}else{
$("#test").html("");
}
}
//document加载完毕执行
$(document).ready(function(){
//dosomethinghere
//隔行换色功能
$("p").each(function(i){
this.style.color=['red','green','blue','black'][i%2]
});
//eq(2)获取$("p")集合的第3个元素
$("p").eq(2).click(function(){$("#display").css("color","blue")});
//所有test中的p都附加了样式"over"。
$("#test>p").addClass("over");
//test中的最后一个p附加了样式"out"。
$("#testp:last").addClass("out");
//选择同级元素还没看懂
//$('#faq').find('dd').hide().end().find('dt').click(function()
//选择父级元素
$("a").hover(
function(){$(this).parents("p").addClass("out")},
function(){$(this).parents("p").removeClass("out")})
//trigger(eventtype):在每一个匹配的元素上触发某类事件,
//bind(eventtype,fn),unbind(eventtype):事件的绑定与反绑定从每一个匹配的元素中(添加)删除绑定的事件。
//方法的连写
$("#display").hover(function(){
$(this).addClass("over");
},function(){
$(this).removeClass("over");
})
.click(function(){alert($("#display").text())});
if($.browser.msie){//判断浏览器,若是ie则执行下面的功能
//聚焦
$("input[@type=text],textarea,input[@type=password]")
.focus(function(){$(this).css({background:"white",border:"1pxsolidblue"})})
//也可以这样连着写,
//.blur(function(){$(this).css({background:"white",border:"1pxsolidblack"})})
//失去焦点
//css样式可以通过addClass()来添加
$("input[@type=text],input[@type=password]")
.blur(function(){$(this).css({background:"white",border:"1pxsolidblack"});});
}
});
</script>
<styletype="text/css">
.over{
font-size:large;
font-style:italic;
}
.out{
font-size:small;
}
</style>
</head>
<body>
<divid="display">demo</div>
<divid="test">
<p>adfa<a>dfasfa</a>sdfasdf</p>
<p>adfadfasfasdfasdf</p>
<p>adfadfasfasdfasdf</p>
<p>adfadfasfasdfasdf</p>
</div>
<formid="theForm">
isString<div><inputtype="text"id="username"onblur="isString(this.value)"/></div>
isInteger<div><inputtype="text"id="password"onblur="isInteger(this.value)"/></div>
isTelephone<div><inputtype="text"id="telephone"onblur="isTelephone(this.value)"/></div>
isMobile<div><inputtype="text"id="mobile"onblur="isMobile(this.value)"/></div>
isEmail<div><inputtype="text"id="email"onblur="isEmail(this.value)"/></div>
isUri<div><inputtype="text"id="uri"onblur="isUri(this.value)"/></div>
<div><inputtype="button"value="Validata"onclick="returnvalidata();"/></div>
</form>
</body>
</html>