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  matchreplacesearch  split 方法。

"use strict"

JS声明变量 const 声明一个常亮(不可改变) var 声明一个全局变量  let声明一个局部变量 constlet不能重复定义一个变量。

 

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个空位的数组,而不是由7undefined组成的数组)。

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正则表达式的主要内容,如果未能解决你的问题,请参考以下文章

text 正则表达式片段

markdown 正则表达式模式片段

正则表达式匹配特定的 URL 片段而不是所有其他 URL 可能性

循环通过 python 正则表达式匹配

asp.net 使用正则表达式验证包含打开/关闭括号片段的属性字符串

js 常用正则表达式表单验证代码