You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ansible使用split函数拆分字符串如何仅按第一个分隔符拆分

解决方法

Ansible 内置的 split 过滤器支持传入第二个参数,用于指定最大拆分次数,你只需将该参数设置为 1,即可实现仅拆分第一个分隔符的需求。

示例代码

你给出的示例场景可以按照如下方式实现:

- name: 按第一个分隔符拆分字符串
  ansible.builtin.set_fact:
    # 取第一个分隔符前的内容
    string1: "{{ origin_str.split('=', 1)[0] }}"
    # 取第一个分隔符后的全部剩余内容
    string2: "{{ origin_str.split('=', 1)[1] }}"
  vars:
    origin_str: "hello=abcd=def=asd"

执行结果

  • string1 的值为 hello
  • string2 的值为 abcd=def=asd

原理解释

split 过滤器的第二个参数代表最多拆分的次数,设为1时,不管字符串后续还有多少个匹配的分隔符,都只会执行1次拆分,最终生成包含2个元素的列表,刚好匹配你需要的拆分规则。


内容的提问来源于stack exchange,提问作者Vini

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 01:45:01