regex - helm - 用下划线替换特殊字符
问题描述
k8s & helm 新手。
尝试使用 , 声明部署中的字段,该字段{{ .Release.Name }}
不得包含除字母(大写 + 小写)、数字和 _ 以外的字符。
排除的字符应替换为 _,例如:
feature/my-feature-1130
应替换为:feature_my_feature_1130
有人可以帮我创建这样一个领域吗?
提前谢谢了!
解决方案
你可以regexReplaceAll
这样使用:
{{ regexReplaceAll "\\W+" .Release.Name "_" }}
请参阅正则表达式演示。
\W+
匹配 1 次或多次出现的任何非单词 char(除字母、数字和 之外的字符_
)并将它们替换为_
.
\
转义符号需要另一个转义来形成正则表达式转义,因为它用于形成字符串转义序列。
注意函数参数的顺序,首先是模式,然后是输入字符串,然后是替换模式。
推荐阅读
- android - 来自 cURL 请求的 AsyncTask 中的 HTTP 请求
- javascript - 如何使输入成为视图的默认输入字段?
- linux - 没有可用的包 kernel-devel-3.10.0-957.el7.x86_64
- javascript - 在 VS Code 中反应建议
- c# - 如何使文本文件的内容在通过本地状态文件夹内的记事本打开时看起来加密且不可编辑
- php - 共享访问:如何修复“fread():长度参数必须大于 0”?
- laravel - 如何在 Laravel Eloquent 中加入 3 个以上的表
- spring - org.springframework.beans.factory.BeanCreationException:创建类路径资源中定义的名称为“securityInterceptor”的bean时出错
- python-3.x - 你如何打印在循环类中找到的变量
- laravel - Laravel,关系为空