尝试以“ubuntu-prod-sfo1-01”格式提取服务器名称的各个元素,这将给我[[ubuntu“,”prod“,”sfo1“,”01“]的结果。因此,“ - ”与结束元素和结束元素之间的所有内容在结束时以“ - ”开头,尊重。
“ubuntu-prod-sfo1-01”==> [“ubuntu”,“prod”,“sfo1”,“01”]
我对它的尝试失败了,因为我能找到的最好的解决方案会给我第一个“刺激”,但是无法获得每个剩余的元素。问题似乎是在元素之间重复使用' - '。
答案 0 :(得分:1)
您可以在分隔符中将字符串拆分为子字符串,例如-
。
string = "ubuntu-prod-sfo1-01"
string.split('-')
=> ["ubuntu", "prod", "sf01", "01"]
来自官方文档
将str分为基于分隔符的子串,返回这些子串的数组。
如果pattern是String,则在拆分str时将其内容用作分隔符。如果pattern是单个空格,则str在空格上分割,前导空格和连续空格字符的运行被忽略。
答案 1 :(得分:1)
你不需要正则表达式,你可以做......
"ubuntu-prod-sfo1-01".split('-')
=> ["ubuntu","prod", "sfo1", "01"]