Возможное разделение строки на обратной косой черте

Я передаю список каталогов / подкаталогов в playbook следующим образом:

dirs=['Web\this','Web\that','Web']

Это отлично работает, когда я действительно выполняю задачи в этих каталогах (win_shell, вызов процесса сборки), но позже мне нужно скопировать файлы, и '\' не работает, когда используется как часть имени файла . Мне интересно использовать следующее, поэтому я получу имя модуля для большинства сборок и «Web» для того, что находится в корневой папке:

dirs[1].split('\\')[-1]

Я надеялся, что это вернет «это», «то», и «Web», соответственно.

Но я не могу найти никакой комбинации косой черты или магии регулярных выражений для разделения моих строк. Я нашел около 5 вопросов / ответов в StackExchange, которые близки, но ни один из них, похоже, этого не делает.

Я также пробовал это с вариантами

"{{ dirs[1] | regex_replace('\\','-') }}"
1
задан 28 September 2019 в 00:17
1 ответ

შესაძლებელია ალქიმიიდან ციტირების თავიდან აცილება და ცვლადის გამოცხადება გამყოფით. გამოიყენეთ ერთ ციტირებული სტილი ; უკანა ხაზის "\" გამოყენება შესაძლებელია თავისუფლად. მაგალითად, ქვემოთ მოცემულ სპექტაკლში

  vars:
    separator: '\'
    dirs: ['Web\this','Web\that','Web']
  tasks:
    - debug:
        msg: "{{ dirs[1].split(separator)[-1] }}"

მოცემულია

"msg": "that"
0
ответ дан 4 December 2019 в 02:41

Теги

Похожие вопросы