字符串分割提取问题

请问有一段字符串如下,其中 开头的offline和结尾的mysql.dba.com.lan. 不会变,但是中间的xxx.yyy.zzz是不确定的,请问怎么把xxx.yyy.zzz截取出来,不管中间部分是xxx还是xxx.yyy还是xxx.yyy.zzz这样的模式

offline.xxx.yyy.zzz.mysql.dba.com.lan.
阅读 2.2k
4 个回答

正则最方便

'offline.xxx.yyy.zzz.mysql.dba.com.lan.'.match(/offline\.(.+)\.mysql\.dba\.com\.lan\./)

如果中间存在'.mysql.dba.com.lan.'字符串,str.replace('offline.', '').replace('.mysql.dba.com.lan.', '')这个方法就会有问题。

同样那个笨点的方法也存在这个问题,改成str.substring(8,str.lastIndexOf('.mysql.dba.com.lan.'))就可以了。

正则辣个还是很棒的。

var res = str.replace('offline.', '').replace('.mysql.dba.com.lan.', '')

正则不太会,用笨方法哈

var str = "offline.xxx.yyy.mysql.dba.com.lan.";
var result = str.substring(8,str.indexOf('.mysql.dba.com.lan.'))
console.log(result) // xxx.yyy
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题