js 截取字符串里的IP和port

例如:str = ' 192.168.12. 254:18081 ' 

1. 用 ip和port 的正则

let ip_reg = /([\d\.]*)/gi;

let ip =ip_reg.exec( str );

ip=ip[0] 



let port_reg =/.+:(\d{1,5})/

let port =str.match(port_reg);

port= port[1]

 

2. 一步到位

let ipPort=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]为匹配的完整串.其余的为括号里捕获的字符串(当含有子匹配时).

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值