Почему я не могу удалить эти элементы массива в jq?

Ответил в комментариях:

AFAIK : здесь не нужно экранировать. Однако, поскольку . не находится в диапазоне [0-9], шаблон [0-9]* не будет соответствовать десятичным числам, таким как 55.5 - вам нужно что-то вроде [0-9.]*, т.е. "/$name/s/:[0-9. ]*$/:$P/"

2
14.06.2017, 05:45
1 ответ

Я думаю, что проблема в том, что эти переменные находятся вне области видимости, так как они связаны внутри[]. Я новичок в jq, но следующий код, который дублирует код, кажется, дает вам правильный ответ:

 . as $arr |
 looparr($arr) | 
 .[0] as $str |
 .[1] as $ed |
 $arr |
 del(.[$str:$ed+1])
+ [
 . as $arr |
 looparr($arr) | 
 .[0] as $str |
 .[1] as $ed |
 $arr[$str:$ed+1] |
 join(" ")
]
3
27.01.2020, 22:03

Теги

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