加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式

发布时间:2020-12-13 22:03:57 所属栏目:百科 来源:网络整理
导读:正则表达式 防止SQL注入和防止XPATH注入 都是 输入一些恶意字符串,对网站进行攻击。 条件1:会使用正则表达式 语法: ^ 开始 $ 结束 {} [] (|) “?”元字符规定其前导对象必须在目标对象中连续出现零次或一次 [ ]? 表示这个空格出现0次或者1次 正则表达式


正则表达式

防止SQL注入和防止XPATH注入 都是 输入一些恶意字符串,对网站进行攻击。

条件1:会使用正则表达式

语法:

^ 开始 $ 结束

{}

[]

(|)

“?”元字符规定其前导对象必须在目标对象中连续出现零次或一次

[ ]? 表示这个空格出现0次或者1次


正则表达式

test:

判断字符串是否存在指定模式,返回值是bollean

exec:

查找并且返回一个结果数组,

查找并且返回当前的匹配结果, 并且以数组的形式返回

exec 方法受参数 g 的影响。若指定了 g,则下次调用 exec 时,会从上个匹配的 lastIndex 开始查找。

var str ="1a1b1c";

var reg =new RegExp("1.","");

alert(reg.exec(str)[0]);

alert(reg.exec(str)[0]);

上述两个输出都是 1a。现在再看看指定参数 g

var str ="1a1b1c";

var reg =new RegExp("1.","g");

alert(reg.exec(str)[0]);

alert(reg.exec(str)[0]);


上述第一个输出 1a,第二个输出 1b


match :

是string 对象的一个方法


正则表达式参数:

g:代表可以进行全局匹配。

i:代表不区分大小写匹配。

m:代表可以进行多行匹配。

var str ="1a1b1c";

var reg =new RegExp("1.","");

alert(str.match(reg));

match 这个方法有点像 exec,但:exec RegExp 对象的方法;math String 对象的方法。二者还有一个不同点,就是对参数 g 的解释。

如果指定了参数 g,那么match 一次返回所有的结果。

var str ="1a1b1c";

var reg =new RegExp("1.","g");

alert(str.match(reg));

//alert(str.match(reg)); // 此句同上句的结果是一样的

此结果为一个数组,有三个元素,分别是:1a1b1c


var pattern = new RegExp( 表达式,参数)

表达式/ /

参数 g i m


HTML页面:

<html>
<head>
    <title>Demo Example</title>
    <script type="text/javascript" src="jquery-1.12.0.min.js"></script>
    <script type="text/javascript" src="jx.core.js"></script>
    <!--<script type="text/javascript" src="jc.util.js"></script>-->
    <script type="text/javascript" src="demo.js"></script>
    <link rel="stylesheet" type="text/css" href="demo.css"/>
</head>
<body>
    <!--<input id="demo" value=""></input>
    <input id="btn"  type="button" value ="点击"></input>-->
    <!--<table id="demotable" border="1">
    	 <tr>
    	 	 <td>Row1 cell1</td>
    	 	 <td>Row1 cell2</td>
    	 	 <td>Row1 cell3</td>
    	 </tr>
    	 <tr>
    	 	 <td>Row2 cell1</td>
    	 	 <td>Row2 cell2</td>
    	 	 <td>Row2 cell3</td>
    	 </tr>
    </table>-->
     <tr>
				<th width="100px"><font color="red">*</font>登录名:</th>
				<td>
					<input  id="input" type="text" class="ui-input" name="loginID" dataType="English" minLength="2" maxLength="50"/>
					<span class="tip">请输入2-50位英文字母作为登录名,不能重复</span>
				</td>
			</tr>
			<input id="btn" type="button"value="点击"/>
    <!--<li><span title="点击">点击</span></li>-->
</body>
</html>

JS代码:
(function(){
	
	$('#btn').click(function(){
		  var pattern = /^[0-9]{1,}[a-z]{1}[0-9]{1,}$/i;
		  var str = '12a0000';
		  console.log(pattern.test(str));
		  if(pattern.test(str)){
		  	  alert('匹配');
		  	}else{
		  		alert('不匹配');
		  	}
		  
		});

})

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读