ansible - Oneliner 断言列表的所有元素
问题描述
在 Ansible 中,我试图找到一个 oneliner 来断言列表的所有元素都与使用 python 生成器的正则表达式匹配。
就像是:
- assert:
that:
- (item is match('{{ regex }}') for item in list)
但我无法弄清楚正确的语法。
可能吗 ?如何 ?
解决方案
一种可能的解决方案:使用select
过滤器将列表减少为与您的正则表达式匹配的元素,并将结果列表的大小与原始列表进行比较:
- assert:
that:
- (my_list | select('match', my_regex) | list | length) == (my_list | length)
推荐阅读
- docker - 如何防止 docker 使用 BTRFS 卷
- geopandas - 为什么在使用地理编码时很少有地方没有返回坐标?
- python - 在python中找到彼此相距10米的点的ID
- r - 有没有办法用 R 中的另一个数据框中的行替换一个数据框中的行?
- c# - 在 Rider 中为 dotnet 2.1 项目配置不带代码的 log4net
- archer - 如何从 Archer 的日期字段中获取自定义对象中的日期?
- c++ - 错误:'const char* HTTPREQUESTS::certificate'不是'class HTTPREQUESTS'的静态成员
- ios - 安装 Scandit 失败。该包不包含任何与该框架兼容的程序集引用或内容文件
- python - 包需要不同的 Python:2.7.17 not in '>=3.6.1' while setting up pre-commit
- microsoft-graph-api - 用户增量集合返回“空”记录