Ansible 字符串分割

问题描述 投票:0回答:1

我在ansible中有一个基于分隔符的分割函数。但只想获取第一次出现的分隔符字符串,其余的作为第二个字符串。

string: "hello=abcd=def=asd"
string1= string.split("=")[0]
string2= string.split("=)[1..n] (This is what i missing)

如何在ansible中使用string.split实现这一点?

ansible ansible-template
1个回答
10
投票

问:获取第一次出现的分隔符字符串,其余部分作为第二个字符串。

A:再次连接字符串的其余部分

  arr: "{{ string.split('=') }}"
  string1: "{{ arr[0] }}"
  string2: "{{ arr[1:] | join('=') }}"

(可选)将 maxsplit 参数设置为 1

  arr: "{{ string.split('=', 1) }}"
  string1: "{{ arr.0 }}"
  string2: "{{ arr.1 }}"

两个选项给出相同的结果

  string1: hello
  string2: abcd=def=asd
© www.soinside.com 2019 - 2024. All rights reserved.