\n 换行
\d 数字0-9
\w 英文、数字、下划线 [a-z0-9_]
\s 空白字符 (空格 tab)
^ 以什么开头 $ 以什么结尾
\D 除了数字以外 [^0-9] \W 除了英文、数字、下划线 [^a-z0-9_] \S 除了空白字符
量词:个数
{n} 正好出现n次
{n,m} 最少出现n次,最多出现m次
{n,} 至少出现n次,至多不限
eg: 020-23632031+86
(0\d{2,3}-)?[0-9]\d{7} ?前面包住的内容可有可无 0开头,中间2-3个数字,-结尾
*也是代表可有可无
--------------------------------------------------------------------------------------------------------------------------
[abc] a或b或c中的任一字符
/.+/g .是任意字符的意思,+是量词,若干个的意思
/<[^<>]+>/g; 以<开头,其后跟着若干个除<和>以外的若干个字符,以>结尾的字符串。
①获取到一个字符串里的所有数字
A.不用正则表达式求解
var str='128 ajhj 21 akl2 10 a112';
var arr=[];
var tmp="";
for(var i=0;i<str.length;i++){
if(str.charAt(i)>='0'&&str.charAt(i)>='9'){
tmp=tmp+str.charAt(i);
}else {
if(tmp){
arr.push(tmp);
tmp='';
}
}
} alert(arr);
B.用正则表达式
var str='128 ajhj 21 akl2 10 a112';
var re=/\d+/g; //g是global全局搜索的意思,+是若干个的意思,i是ignore忽略大小写
alert(str.match(re));