JS正则表达式
Posted 85-q
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS正则表达式相关的知识,希望对你有一定的参考价值。
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> </head> <body> <script > function checkMobile(){ var sMobile = document.mobileform.mobile.value if(!(/^1[3|4|5|8][0-9]d{4,8}$/.test(sMobile))){ alert("不是完整的11位手机号或者正确的手机号前七位"); document.mobileform.mobile.focus(); return false; } } </script> <script > function isQQ(aQQ) { var bValidate = RegExp(/^[1-9][0-9]{4,9}$/).test(aQQ); if (bValidate) { return true; } else return false; } </script> <script > $(function () { $("input[name=‘sub‘]").on("click", function () { if (!isEmail($("input[name=‘email‘]").val())) { $("span[name=‘email‘]").html("邮箱格式错误"); return false; } else { $("span[name=‘email‘]").html(""); } if (checkStrong($("input[name=‘password‘]").val()) < 3) { $("span[name=‘password‘]").html("密码太过简单"); return false; } else { $("span[name=‘password‘]").html(""); } if (!isQQ($.trim($("input[name=‘qq‘]").val()))) { $("span[name=‘qq‘]").html("请输入正确的QQ号码"); return false; } else { $("span[name=‘qq‘]").html(""); } if (!isPhone($.trim($("input[name=‘mnumber‘]").val()))) { $("span[name=‘mnumber‘]").html("请输入正确的手机号码"); return false; } else { $("span[name=‘mnumber‘]").html(""); } return true; }; }; </script> <script > function isCardNo(card){ // 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X var reg = /(^d{15}$)|(^d{18}$)|(^d{17}(d|X|x)$)/; if(reg.test(card) === false){ alert("身份证输入不合法"); return false; } } </script> <script > var reDateTime = /^(?:19|20)[0-9][0-9]-(?:(?:0[1-9])|(?:1[0-2]))-(?:(?:[0-2][1-9])|(?:[1-3][0-1])) (?:(?:[0-2][0-3])|(?:[0-1][0-9])):[0-5][0-9]:[0-5][0-9]$/; var isDateTime = reDateTime.test(‘2012-01-31 09:00:22‘); </script> </body> </html>
JS正则
正则表达式是用于匹配字符串中字符组合的模式。在 javascript中,正则表达式也是对象。这些模式被用于 RegExp 的 exec 和 test 方法, 以及 String 的 match、replace、search 和 split 方法。
"use strict"
JS声明变量 const 声明一个常亮(不可改变) var 声明一个全局变量 let声明一个局部变量 const和let不能重复定义一个变量。
Array
// js数组
// 创建数组
var mycarss = new Array(7);
var mycarsss = Array.of(7);
console.log(mycarss);
console.log(mycarsss);
var mycars = new Array();
mycars[0] = "Saab";
mycars[1] = "Volvo";
mycars[2] = "BMW";
console.log(mycars);
var fruits = [‘Apple‘, ‘Banana‘];
console.log(fruits);
// 通过索引访问数组元素
var first = fruits[0];
console.log(first);
// Apple
var last = fruits[fruits.length - 1];
console.log(last);
// Banana
// 遍历数组 foreach循环
mycars.forEach(function (item, index, array) {
console.log(item, index);
})
fruits.forEach(function (item, index, array) {
console.log(item, index);
});
// Apple 0
// Banana 1
// for in 遍历数组
for (x in mycars){
document.write(mycars[x] + "<br />")
}
// contact合并数组
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
var arr2 = new Array(3)
arr2[0] = "James"
arr2[1] = "Adrew"
arr2[2] = "Martin"
document.write(arr.concat(arr2))
// 用数组的元素组成字符串 这段有点问题
// var arr3 = new Array(3);
// arr[0] = "George"
// arr[1] = "John"
// arr[2] = "ahomas"
// document.write(arr3.join());
// document.write("<br />");
// document.write(arr3.join("."));
//// 数组排序输出
// document.write(arr3.sort())
// 添加元素到数组的末尾
var newLength = fruits.push(‘Orange‘);
console.log(fruits);
// newLength:3; fruits: ["Apple", "Banana", "Orange"]
// 删除并获取数组末尾的元素
var last = fruits.pop();
console.log(fruits);
console.log(last);
// remove Orange (from the end)
// last: "Orange"; fruits: ["Apple", "Banana"];
// 删除并获取数组最前面(头部)的元素
var first = fruits.shift();
console.log(fruits);
console.log(first);
// remove Apple from the front
// 添加元素到数组的头部
var newLength = fruits.unshift(‘Strawberry‘) // add to the front
console.log(fruits);
// ["Strawberry", "Banana"];
// 找出某个元素在数组中的索引
fruits.push(‘Mango‘);
// ["Strawberry", "Banana", "Mango"]
var index = fruits.indexOf(‘Banana‘);
console.log(index);
// 1
// 复制一个数组
var shallowCopy = fruits.slice(); // this is how to make a copy
// ["Strawberry", "Mango"]
console.log(shallowCopy);
// Array.from() 方法从一个类似数组或可迭代对象中创建一个新的数组实例。
console.log(Array.from(‘foo‘));
// expected output: Array ["f", "o", "o"]
console.log(Array.from([1, 2, 3], x => x + x));
// expected output: Array [2, 4, 6]
// Array.isArray() 用于确定传递的值是否是一个 Array。
console.log(Array.isArray([1, 2, 3]));
// true
console.log(Array.isArray({foo: 123}));
// false
console.log(Array.isArray("foobar"));
// false
console.log(Array.isArray(undefined));
// false
// Array.of() 方法创建一个具有可变数量参数的新数组实例,而不考虑参数的数量或类型。
// Array.of() 和 Array 构造函数之间的区别在于处理整数参数:Array.of(7) 创建一个具有单个元素 7 的数组,
// 而 Array(7) 创建一个长度为7的空数组
// (注意:这是指一个有7个空位的数组,而不是由7个undefined组成的数组)。
var a = Array.of(7); // [7]
var b = Array.of(1, 2, 3); // [1, 2, 3]
var c =Array(7); // [ , , , , , , ]empty × 7
var d = Array(1, 2, 3); // [1, 2, 3]
console.log(a);
console.log(b);
console.log(c);
console.log(d);
以上是关于JS正则表达式的主要内容,如果未能解决你的问题,请参考以下文章
正则表达式匹配特定的 URL 片段而不是所有其他 URL 可能性