Используйте регулярное выражение в шаблоне руля

#kubernetes-helm

Вопрос:

Я пытаюсь создать условие в своем шаблоне управления, чтобы проверить допустимое (или, скорее, недопустимое) имя хоста с помощью regexMatch функции.

Вот моя строка кода, которую я использую:

 {{- if regexMatch "(?:[0-9]{1,3}.){3}[0-9]{1,3}$" .Values.hostname }}
 

Связанная часть в файле значений является простой:

 hostname: 10.10.10.10
 

Однако я сталкиваюсь с синтаксической ошибкой без реального объяснения:
Error: parse error at (api-gateway/templates/ingress.yml:1): invalid syntax

Когда я попытался использовать пример из документов: https://helm.sh/docs/chart_template_guide/function_list/#regexmatch-mustregexmatch очевидно, это сработало, поэтому я задаюсь вопросом, почему мой код не работает.

Ответ №1:

Оказывается, мне нужно было использовать двойную обратную косую черту, чтобы это сработало:

 {{- if regexMatch "(?:[0-9]{1,3}\.){3}[0-9]{1,3}$" .Values.hostname }}