传统的查找字符串中的相关的字符 :
<script type="text/javascript">
var str='aaa23uihjkikh666jhjhk888kuhji123bnjk321';//这是字符;
function findNum(str){
var arr=[];
var tmp='';
for(var i=0;i<str.length;i++){
if(str.charAt(i) >=0||str.charAt(i)<=9){
tmp+=str[i];
}else{
if(tmp!=''){
arr.push(tmp);
tmp='';
}
}
}
if(tmp!='')arr.push(tmp);
return arr;
}
console.log(findNum(str));//[23,666,888,123,321]
</script>而正则匹配 :
<script type="text/javascript">
var str='aaa23uihjkikh666jhjhk888kuhji123bnjk321a';
function findNum(str){
return str.match(/\d+/g);
}
console.log(findNum(str));//[23,666,888,123,321]
</script>//由此可看出正则的强大
正则的方法有哪些?下面就来列列 :
test : 正则去匹配字符串,匹配成功返回true,失败返回false ,test写法 : 正则.test(字符串)
search : 正则去匹配字符串,成功返回位置,失败返回-1 , search写法 : 字符串.search(正则)默认区分大小写,如果不取分,则在正则后面加标识 i 如 : /C/i;
match : 匹配成功返回成功的数组,失败返回null例: var str='abc123def456ghi789'; var re=/(\d)+/g; console.log(str.match(re));//匹配所有的数字型字符串,这里返回的是[123,456,789]
replace : 正则去匹配字符串,匹配成功的字符替换成新的字符串,replace写法 : 字符串.replace(正则,新的字符串),也可以是一个函数 ,第一个参数是陪陪成功的字符,匹配子项 : 小括号() ()小括号的另一个意思,分组操作把正则的一个整体叫做(母亲),然后左边第一个小括号里面的正则叫做(母亲的第一个孩子),第二个小括号就是第二个孩子
来源:https://www.cnblogs.com/week-1/p/6557517.html