例如,str=' 192.168.12. 254:18081 '
1.IP和端口正则
letIP_reg=/([d.]* )/gi; letIP=IP_reg.exec(str ); IP=IP [0] let port _ reg=/. (d { 1,5 } )/letport=str.match(port_reg ); port=port[1]
2 .一步到位
letipport=str.match(IP_reg ) ip=ipPort[ 0 ]; port=ipPort[ 2 ];
3. exec和match方法的区别
1 ) match
match法是String正则表达式法。
match用法的主要区别是正则表达式中是否有全局标记g。
1 )如果存在g全局标志,则返回的数组将保存所有匹配项,但不包含子匹配项。
2 )如果没有g全局标志,则返回的数组arr.arr[0]将保存完全匹配。 arr[1]存储第一个括号中捕获的字符串,同样,arr[n]存储第n个括号中捕获的内容。 也就是说,如果包含全局标志,则返回的结果首先是正确匹配的结果,然后是子匹配的结果。
2 ) exec
与match方法不同,exec是正则表达式的方法。
exec与match的关联等价于exec (有或不影响g )或不包含g全局标志的match。 即,作为匹配数组arr[0]的完整字符串返回。 剩下的是括号内捕获的字符串) )包含子匹配时)。