ansible - Ansible 字符串拆分
问题描述
我在ansible中有一个基于分隔符的拆分功能。但只想获得第一次出现的分隔符字符串,其余的作为第二个字符串。
string: "hello=abcd=def=asd"
string1= string.split("=")[0]
string2= string.split("=)[1..n] (This is what i missing)
我如何使用 string.split 在 ansible 中实现这一点?
解决方案
问:“获取第一次出现的分隔符字符串,其余的作为第二个字符串。 ”
A:再次加入字符串的其余部分,例如
- set_fact:
string1: "{{ string.split('=')[0] }}"
- set_fact:
string2: "{{ string.split('=')[1:]|join('=') }}"
给
string1: hello
string2: abcd=def=asd
或者,将maxsplit参数设置为 1 并重用该数组。例如,下面的任务给出了相同的结果
- set_fact:
string1: "{{ _arr.0 }}"
string2: "{{ _arr.1 }}"
vars:
_arr: "{{ string.split('=', 1) }}"
推荐阅读
- c - 将一个 4 位整数除以 2 位整数并通过 c 计算
- c - 打开功能不返回串行端口
- redis - 如何在 Redis PSUBSCRIBE 调用中转义星号字符?
- c# - OleDbCommand.Prepare 方法需要“14”类型的参数
- amazon-web-services - 从 AWS 存储桶中删除对象
- postgresql - 如何在查询中更改日期格式以及排序
- mongodb - Mongo-go-driver 错误 mongo.NewClient 参数中的新客户端错误 ClientOptions
- laravel - 伪造 laravel 自定义 ssl 设置
- postgresql - 匹配以“.”分隔的字符串的前 2 位数字
- lua - 通过 Lua 创建交互式 GTK 界面