Resource Manager는 ARM 템플릿(Azure Resource Manager 템플릿)에서 문자열 작업을 수행하는 데 사용할 수 있도록 아래의 함수를 제공합니다.
- base64
- base64ToJson
- base64ToString
- concat
- contains
- dataUri
- dataUriToString
- empty
- endsWith
- first
- format
- guid
- indexOf
- join
- json
- last
- lastIndexOf
- length
- newGuid
- padLeft
- replace
- skip
- split
- startsWith
- string
- substring
- take
- toLower
- toUpper
- trim
- uniqueString
- uri
- uriComponent
- uriComponentToString
base64
base64(inputString)
입력 문자열의 base64 표현을 반환합니다.
Bicep에서 함수를 base64 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| inputString | 예 | string | base64 표현으로 반환할 값입니다. |
반환 값
Base64 표현을 포함하는 문자열입니다.
예제
다음 예시에서는 base64 함수를 사용하는 방법을 보여 줍니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"storageResourceGroup": {
"type": "string"
},
"storageAccountName": {
"type": "string"
}
},
"resources": [],
"outputs": {
"ExistingStorage": {
"type": "object",
"value": "[reference(resourceId(parameters('storageResourceGroup'), 'Microsoft.Storage/storageAccounts', parameters('storageAccountName')), '2021-04-01')]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| base64Output | 문자열 | b25lLCB0d28sIHRocmVl |
| toStringOutput | 문자열 | 하나 둘 셋 |
| toJsonOutput | Object | {“one”: “a”, “two”: “b”} |
base64ToJson
base64ToJson(base64Value)
base64 표현을 JSON 개체로 변환합니다.
Bicep에서 함수를 base64ToJson 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| base64Value | 예 | string | JSON 개체로 변환할 base64 표현입니다. |
반환 값
JSON 개체입니다.
예제
다음 예제에서는 base64ToJson 함수를 사용하여 base64 값을 변환합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"storageResourceGroup": {
"type": "string"
},
"storageAccountName": {
"type": "string"
}
},
"resources": [],
"outputs": {
"ExistingStorage": {
"type": "object",
"value": "[reference(resourceId(parameters('storageResourceGroup'), 'Microsoft.Storage/storageAccounts', parameters('storageAccountName')), '2021-04-01')]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| base64Output | 문자열 | b25lLCB0d28sIHRocmVl |
| toStringOutput | 문자열 | 하나 둘 셋 |
| toJsonOutput | Object | {“one”: “a”, “two”: “b”} |
base64ToString
base64ToString(base64Value)
base64 표현을 문자열로 변환합니다.
Bicep에서 함수를 base64ToString 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| base64Value | 예 | string | 문자열로 변환할 base64 표현입니다. |
반환 값
변환된 base64 값의 문자열입니다.
예제
다음 예제에서는 base64ToString 함수를 사용하여 base64 값을 변환합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"storageResourceGroup": {
"type": "string"
},
"storageAccountName": {
"type": "string"
}
},
"resources": [],
"outputs": {
"ExistingStorage": {
"type": "object",
"value": "[reference(resourceId(parameters('storageResourceGroup'), 'Microsoft.Storage/storageAccounts', parameters('storageAccountName')), '2021-04-01')]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| base64Output | 문자열 | b25lLCB0d28sIHRocmVl |
| toStringOutput | 문자열 | 하나 둘 셋 |
| toJsonOutput | Object | {“one”: “a”, “two”: “b”} |
concat
concat(arg1, arg2, arg3, ...)
여러 문자열 값을 결합하고 연결된 문자열을 반환하거나 여러 배열을 결합하고 연결된 배열을 반환합니다.
Bicep에서 함수 대신 concat()을 사용하여 가독성을 개선합니다. 그러나 여러 줄 문자열의 문자열 대체와 같은 경우에 함수 또는 replace() 함수를 다시 사용해야 concat() 할 수 있습니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| arg1 | 예 | 문자열 또는 배열 | 연결할 첫 번째 문자열 또는 배열입니다. |
| 더 많은 인수 | 아니요 | 문자열 또는 배열 | 연결 순서로 나타낸 더 많은 문자열 또는 배열입니다. |
이 함수는 임의의 수의 인수를 사용할 수 있으며 매개 변수에 대한 문자열 또는 배열을 허용할 수 있습니다. 그러나 매개 변수에 대한 배열과 문자열을 둘 다 제공할 수는 없습니다. 문자열은 다른 문자열과만 연결됩니다.
반환 값
연결된 값의 문자열 또는 배열입니다.
예제
다음 예제에서는 두 문자열 값을 결합하고 연결된 문자열을 반환하는 방법을 보여줍니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"prefix": {
"type": "string",
"defaultValue": "prefix"
}
},
"resources": [],
"outputs": {
"concatOutput": {
"type": "string",
"value": "[concat(parameters('prefix'), '-', uniqueString(resourceGroup().id))]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| concatOutput | 문자열 | prefix-5yj4yjf5mbg72 |
다음 예제에서는 두 배열을 결합하는 방법을 보여 줍니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"firstArray": {
"type": "array",
"defaultValue": [
"1-1",
"1-2",
"1-3"
]
},
"secondArray": {
"type": "array",
"defaultValue": [
"2-1",
"2-2",
"2-3"
]
}
},
"resources": [
],
"outputs": {
"return": {
"type": "array",
"value": "[concat(parameters('firstArray'), parameters('secondArray'))]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| return | 배열 | ["1-1", "1-2", "1-3", "2-1", "2-2", "2-3"] |
contains
contains(container, itemToFind)
배열에 값이 포함되어 있는지, 개체에 키가 포함되어 있는지 또는 문자열에 부분 문자열이 포함되어 있는지 확인합니다. 문자열 비교에서는 대/소문자를 구분합니다. 그러나 개체에 키가 포함되어 있는지를 테스트할 때는 비교에서 대/소문자를 구분하지 않습니다.
Bicep에서 함수를 contains 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| 컨테이너 | 예 | 배열, 개체 또는 문자열 | 찾을 값을 포함하는 값입니다. |
| itemToFind | 예 | 문자열 또는 int | 찾을 값입니다. |
반환 값
True항목을 찾았으면
예제
다음 예제에서는 여러 다른 형식의 contains를 사용하는 방법을 보여 줍니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"stringToTest": {
"type": "string",
"defaultValue": "OneTwoThree"
},
"objectToTest": {
"type": "object",
"defaultValue": {
"one": "a",
"two": "b",
"three": "c"
}
},
"arrayToTest": {
"type": "array",
"defaultValue": [ "one", "two", "three" ]
}
},
"resources": [
],
"outputs": {
"stringTrue": {
"type": "bool",
"value": "[contains(parameters('stringToTest'), 'e')]"
},
"stringFalse": {
"type": "bool",
"value": "[contains(parameters('stringToTest'), 'z')]"
},
"objectTrue": {
"type": "bool",
"value": "[contains(parameters('objectToTest'), 'one')]"
},
"objectFalse": {
"type": "bool",
"value": "[contains(parameters('objectToTest'), 'a')]"
},
"arrayTrue": {
"type": "bool",
"value": "[contains(parameters('arrayToTest'), 'three')]"
},
"arrayFalse": {
"type": "bool",
"value": "[contains(parameters('arrayToTest'), 'four')]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| stringTrue | Bool | True |
| stringFalse | Bool | False |
| objectTrue | Bool | True |
| objectFalse | Bool | False |
| arrayTrue | Bool | True |
| arrayFalse | Bool | False |
dataUri
dataUri(stringToConvert)
값을 데이터 URI로 변환합니다.
Bicep에서 함수를 dataUri 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| stringToConvert | 예 | string | 데이터 URI로 변환할 값입니다. |
반환 값
데이터 URI로 형식이 지정된 문자열입니다.
예제
다음 예제에서는 값을 데이터 URI로 변환하고 데이터 URI를 문자열로 변환합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"stringToTest": {
"type": "string",
"defaultValue": "Hello"
},
"dataFormattedString": {
"type": "string",
"defaultValue": "data:;base64,SGVsbG8sIFdvcmxkIQ=="
}
},
"resources": [],
"outputs": {
"dataUriOutput": {
"value": "[dataUri(parameters('stringToTest'))]",
"type": "string"
},
"toStringOutput": {
"type": "string",
"value": "[dataUriToString(parameters('dataFormattedString'))]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| dataUriOutput | 문자열 | data:text/plain;charset=utf8;base64,SGVsbG8= |
| toStringOutput | 문자열 | 전 세계 여러분 안녕하세요! |
dataUriToString
dataUriToString(dataUriToConvert)
데이터 URI로 형식이 지정된 값을 문자열로 변환합니다.
Bicep에서 함수를 dataUriToString 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| dataUriToConvert | 예 | string | 변환할 데이터 URI 값입니다. |
반환 값
변환된 값을 포함하는 문자열입니다.
예제
다음 예제 템플릿은 값을 데이터 URI로 변환하고 데이터 URI를 문자열로 변환합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"stringToTest": {
"type": "string",
"defaultValue": "Hello"
},
"dataFormattedString": {
"type": "string",
"defaultValue": "data:;base64,SGVsbG8sIFdvcmxkIQ=="
}
},
"resources": [],
"outputs": {
"dataUriOutput": {
"value": "[dataUri(parameters('stringToTest'))]",
"type": "string"
},
"toStringOutput": {
"type": "string",
"value": "[dataUriToString(parameters('dataFormattedString'))]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| dataUriOutput | 문자열 | data:text/plain;charset=utf8;base64,SGVsbG8= |
| toStringOutput | 문자열 | 전 세계 여러분 안녕하세요! |
empty
empty(itemToTest)
배열, 개체 또는 문자열이 비어 있는지를 확인합니다.
Bicep에서 함수를 empty 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| itemToTest | 예 | 배열, 개체 또는 문자열 | 비어 있는지 확인할 값입니다. |
반환 값
값이 비어 있으면 반환 True 하고, False그렇지 않으면 .
예제
다음 예제에서는 배열, 개체 및 문자열이 비어 있는지 확인합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"testArray": {
"type": "array",
"defaultValue": []
},
"testObject": {
"type": "object",
"defaultValue": {}
},
"testString": {
"type": "string",
"defaultValue": ""
}
},
"resources": [
],
"outputs": {
"arrayEmpty": {
"type": "bool",
"value": "[empty(parameters('testArray'))]"
},
"objectEmpty": {
"type": "bool",
"value": "[empty(parameters('testObject'))]"
},
"stringEmpty": {
"type": "bool",
"value": "[empty(parameters('testString'))]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| arrayEmpty | Bool | True |
| objectEmpty | Bool | True |
| stringEmpty | Bool | True |
endsWith
endsWith(stringToSearch, stringToFind)
문자열이 값으로 끝나는지 여부를 결정합니다. 비교는 대/소문자를 구분합니다.
Bicep에서 함수를 endsWith 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| stringToSearch | 예 | string | 찾을 값을 포함하는 값입니다. |
| stringToFind | 예 | string | 찾을 값입니다. |
반환 값
True문자열의 마지막 문자 또는 문자가 값과 일치하면 이고, 그렇지 않으면 . False
예제
다음 예제에서는 startsWith 및 endsWith 함수를 사용하는 방법을 보여줍니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"startsTrue": {
"type": "bool",
"value": "[startsWith('abcdef', 'ab')]"
},
"startsCapTrue": {
"type": "bool",
"value": "[startsWith('abcdef', 'A')]"
},
"startsFalse": {
"type": "bool",
"value": "[startsWith('abcdef', 'e')]"
},
"endsTrue": {
"type": "bool",
"value": "[endsWith('abcdef', 'ef')]"
},
"endsCapTrue": {
"type": "bool",
"value": "[endsWith('abcdef', 'F')]"
},
"endsFalse": {
"type": "bool",
"value": "[endsWith('abcdef', 'e')]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| startsTrue | Bool | True |
| startsCapTrue | Bool | True |
| startsFalse | Bool | False |
| endsTrue | Bool | True |
| endsCapTrue | Bool | True |
| endsFalse | Bool | False |
첫째
first(arg1)
문자열의 첫 번째 문자 또는 배열의 첫 번째 요소를 반환합니다. 빈 문자열이 지정되면 함수는 빈 문자열을 반환합니다. 빈 배열의 경우 함수는 null을 반환합니다.
Bicep에서 함수를 first 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| arg1 | 예 | 배열 또는 문자열 | 첫 번째 요소 또는 문자를 검색할 값입니다. |
반환 값
배열에서 첫 번째 요소의 첫 번째 문자 또는 형식(문자열, int, array 또는 개체)의 문자열입니다.
예제
다음 예제에서는 배열 및 문자열과 first 함께 함수를 사용하는 방법을 보여줍니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"arrayToTest": {
"type": "array",
"defaultValue": [ "one", "two", "three" ]
}
},
"resources": [
],
"outputs": {
"arrayOutput": {
"type": "string",
"value": "[first(parameters('arrayToTest'))]"
},
"stringOutput": {
"type": "string",
"value": "[first('One Two Three')]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| arrayOutput | 문자열 | 1 |
| stringOutput | 문자열 | O |
format
format(formatString, arg1, arg2, ...)
입력 값에서 형식이 지정된 문자열을 만듭니다.
Bicep에서 함수를 format 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| formatString | 예 | string | 복합 형식 문자열입니다. |
| arg1 | 예 | 문자열, 정수 또는 부울 | 서식이 지정된 문자열에 포함할 값입니다. |
| 더 많은 인수 | 아니요 | 문자열, 정수 또는 부울 | 서식이 지정된 문자열에 포함할 더 많은 값입니다. |
설명
템플릿에서 문자열의 서식을 지정하려면 이 함수를 사용합니다. .NET의 System.String.Format 메서드와 동일한 서식 옵션을 사용합니다.
예제
다음 예시에서는 format 함수를 사용하는 방법을 보여 줍니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"greeting": {
"type": "string",
"defaultValue": "Hello"
},
"name": {
"type": "string",
"defaultValue": "User"
},
"numberToFormat": {
"type": "int",
"defaultValue": 8175133
}
},
"resources": [
],
"outputs": {
"formatTest": {
"type": "string",
"value": "[format('{0}, {1}. Formatted number: {2:N0}', parameters('greeting'), parameters('name'), parameters('numberToFormat'))]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| formatTest | 문자열 | Hello, User. 형식이 지정된 숫자: 8,175,133 |
guid
guid(baseString, ...)
매개 변수로 제공된 값을 기반으로 고유 식별자 형식의 값을 만듭니다.
Bicep에서 함수를 guid 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| baseString | 예 | string | GUID를 만들기 위해 해시 함수에 사용되는 값입니다. |
| 필요한 경우 더 많은 매개 변수 | 아니요 | string | 고유성 수준을 지정하는 값을 만들기 위해 필요한 만큼 문자열을 추가할 수 있습니다. |
설명
이 함수는 고유 식별자 형식의 값을 만들어야 할 때 유용합니다. 결과의 고유성 범위를 제한하는 매개 변수 값을 제공합니다. 이름이 구독, 리소스 그룹 또는 배포에 고유한지 여부를 지정할 수 있습니다.
반환된 값은 임의 문자열이 아닌 매개 변수의 해시 함수 결과입니다. 반환된 값은 36자입니다. 전역적으로 고유하지 않습니다. 매개 변수의 해시 값을 기반으로 하지 않는 새 GUID를 만들려면 함수를 newGuid 사용합니다.
다음 예제에서는 일반적으로 사용되는 수준에 대한 고유 값을 만드는 데 사용하는 guid 방법을 보여 줍니다.
구독에 범위가 지정된 고유함
"[guid(subscription().subscriptionId)]"
리소스 그룹에 범위가 지정된 고유함
"[guid(resourceGroup().id)]"
리소스 그룹의 배포에 범위가 지정된 고유함
"[guid(resourceGroup().id, deployment().name)]"
guid 함수는 RFC 4122 §4.3에서 알고리즘을 구현합니다. 원본은 GuidUtility에서 찾을 수 있으며 일부 수정 사항이 있습니다. 함수 구현에서 guid() 이 namespaceId 함수는 로 11fb06fb-712d-4ddd-98c7-e71bbd588830설정되고 version 이 값은 .로 5설정됩니다. 값은 함수의 guid() 각 매개 변수를 문자열로 변환하고 구분 기호로 - 연결하여 생성됩니다.
반환 값
고유 식별자 형식의 문자 36자를 포함하고 있는 문자열입니다.
예제
다음 예제에서는 guid에서 결과를 반환합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {},
"variables": {},
"resources": [],
"outputs": {
"guidPerSubscription": {
"type": "string",
"value": "[guid(subscription().subscriptionId)]"
},
"guidPerResourceGroup": {
"type": "string",
"value": "[guid(resourceGroup().id)]"
},
"guidPerDeployment": {
"type": "string",
"value": "[guid(resourceGroup().id, deployment().name)]"
}
}
}
indexof
indexOf(stringToSearch, stringToFind)
문자열 내 값의 첫 번째 위치를 반환합니다. 비교는 대/소문자를 구분합니다.
Bicep에서 함수를 indexOf 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| stringToSearch | 예 | string | 찾을 값을 포함하는 값입니다. |
| stringToFind | 예 | string | 찾을 값입니다. |
반환 값
찾을 항목의 위치를 나타내는 정수입니다. 값은 0부터 시작합니다. 항목을 찾을 수 없으면 -1이 반환됩니다.
예제
다음 예제에서는 indexOf 및 lastIndexOf 함수를 사용하는 방법을 보여줍니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"firstT": {
"type": "int",
"value": "[indexOf('test', 't')]"
},
"lastT": {
"type": "int",
"value": "[lastIndexOf('test', 't')]"
},
"firstString": {
"type": "int",
"value": "[indexOf('abcdef', 'CD')]"
},
"lastString": {
"type": "int",
"value": "[lastIndexOf('abcdef', 'AB')]"
},
"notFound": {
"type": "int",
"value": "[indexOf('abcdef', 'z')]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| firstT | 정수 | 0 |
| lastT | 정수 | 3 |
| firstString | 정수 | 2 |
| lastString | 정수 | 0 |
| notFound | 정수 | -1 |
join
join(inputArray, delimiter)
구분 기호를 사용하여 구분된 단일 문자열에 문자열 배열을 조인합니다.
Bicep에서 함수를 join 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| inputArray | 예 | 문자열의 배열 | 조인할 문자열의 배열입니다. |
| delimiter | 예 | 문자열 분할에 사용할 구분 기호입니다. |
반환 값
문자열입니다.
예제
다음 예제에서는 입력 문자열 배열을 다른 구분 기호로 구분된 문자열에 조인합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"variables": {
"arrayString": [
"one",
"two",
"three"
]
},
"resources": [],
"outputs": {
"firstOutput": {
"type": "string",
"value": "[join(variables('arrayString'), ',')]"
},
"secondOutput": {
"type": "string",
"value": "[join(variables('arrayString'), ';')]"
}
}
}
위 예제의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| firstOutput | 문자열 | "one,two,three" |
| secondOutput | 문자열 | "one;two;three" |
json
json(arg1)
유효한 JSON 문자열을 JSON 데이터 형식으로 변환합니다. 자세한 내용은 함수를 참조 json 하세요.
Bicep에서 함수를 json 사용합니다.
마지막
last(arg1)
문자열의 마지막 문자 또는 배열의 마지막 요소를 반환합니다.
Bicep에서 함수를 last 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| arg1 | 예 | 배열 또는 문자열 | 마지막 요소 또는 문자를 검색할 값입니다. |
반환 값
배열의 마지막 문자의 문자열 또는 마지막 요소의 형식(문자열, int, 배열 또는 개체)입니다.
예제
다음 예제에서는 배열 및 문자열과 last 함께 함수를 사용하는 방법을 보여줍니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"arrayToTest": {
"type": "array",
"defaultValue": [ "one", "two", "three" ]
}
},
"resources": [
],
"outputs": {
"arrayOutput": {
"type": "string",
"value": "[last(parameters('arrayToTest'))]"
},
"stringOutput": {
"type": "string",
"value": "[last('One Two Three')]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| arrayOutput | 문자열 | three |
| stringOutput | 문자열 | e |
lastindexof
lastIndexOf(stringToSearch, stringToFind)
문자열 내 값의 마지막 위치를 반환합니다. 비교는 대/소문자를 구분합니다.
Bicep에서 함수를 lastIndexOf 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| stringToSearch | 예 | string | 찾을 값을 포함하는 값입니다. |
| stringToFind | 예 | string | 찾을 값입니다. |
반환 값
찾을 항목의 마지막 위치를 나타내는 정수입니다. 값은 0부터 시작합니다. 항목을 찾을 수 없으면 -1이 반환됩니다.
예제
다음 예제에서는 indexOf 및 lastIndexOf 함수를 사용하는 방법을 보여줍니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"firstT": {
"type": "int",
"value": "[indexOf('test', 't')]"
},
"lastT": {
"type": "int",
"value": "[lastIndexOf('test', 't')]"
},
"firstString": {
"type": "int",
"value": "[indexOf('abcdef', 'CD')]"
},
"lastString": {
"type": "int",
"value": "[lastIndexOf('abcdef', 'AB')]"
},
"notFound": {
"type": "int",
"value": "[indexOf('abcdef', 'z')]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| firstT | 정수 | 0 |
| lastT | 정수 | 3 |
| firstString | 정수 | 2 |
| lastString | 정수 | 0 |
| notFound | 정수 | -1 |
length
length(string)
문자열의 문자 수, 배열의 요소 수 또는 개체의 루트 수준 속성 수를 반환합니다.
Bicep에서 함수를 length 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| arg1 | 예 | 배열, 문자열 또는 개체 | 요소의 수를 가져오는 데 사용할 배열, 문자 수를 가져오는 데 사용할 문자열 또는 루트 수준의 속성 수를 가져오려는 데 사용할 개체입니다. |
반환 값
int입니다.
예제
다음 예제에서는 배열 및 문자열과 length 함께 함수를 사용하는 방법을 보여줍니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"arrayToTest": {
"type": "array",
"defaultValue": [
"one",
"two",
"three"
]
},
"stringToTest": {
"type": "string",
"defaultValue": "One Two Three"
},
"objectToTest": {
"type": "object",
"defaultValue": {
"propA": "one",
"propB": "two",
"propC": "three",
"propD": {
"propD-1": "sub",
"propD-2": "sub"
}
}
}
},
"resources": [],
"outputs": {
"arrayLength": {
"type": "int",
"value": "[length(parameters('arrayToTest'))]"
},
"stringLength": {
"type": "int",
"value": "[length(parameters('stringToTest'))]"
},
"objectLength": {
"type": "int",
"value": "[length(parameters('objectToTest'))]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| arrayLength | 정수 | 3 |
| stringLength | 정수 | 13 |
| objectLength | 정수 | 4 |
newGuid
newGuid()
전역적으로 고유한 식별자의 형식으로 값을 반환합니다. 이 함수는 매개 변수의 기본값에만 사용할 수 있습니다.
Bicep에서 함수를 newGuid 사용합니다.
설명
이 함수는 매개 변수의 기본값에 대한 언어 식 내에서만 사용할 수 있습니다. 템플릿의 다른 위치에서 사용하면 오류가 반환됩니다. 호출될 때마다 다른 값을 반환하는 함수이므로 템플릿의 다른 부분에서는 허용되지 않습니다. 동일한 매개 변수를 사용하여 동일한 템플릿을 배포하면 동일한 결과가 안정적으로 생성되지 않습니다.
newGuid 함수는 매개 변수를 guid 받지 않으므로 함수와 다릅니다. 동일한 매개 변수를 사용하여 guid를 호출하면 매번 동일한 식별자를 반환합니다. 특정 환경에 대해 동일한 GUID를 안정적으로 생성해야 하는 경우 guid를 사용합니다. 테스트 환경에 리소스를 배포하는 것과 같이 매번 다른 식별자가 필요한 경우 newGuid를 사용합니다.
newGuid 함수는 .NET Framework의 Guid 구조를 사용하여 전역적으로 고유한 식별자를 생성합니다.
이전 배포에 사용하는 newGuid매개 변수가 포함된 이전의 성공적인 배포를 다시 배포하는 옵션을 사용하는 경우 매개 변수는 다시 평가되지 않습니다. 대신 롤백 배포는 이전 배포의 매개 변수 값을 자동으로 다시 사용합니다.
테스트 환경에서는 짧은 시간 동안만 지속되는 리소스를 반복적으로 배포해야 할 수 있습니다. 고유한 이름을 생성하는 대신 newGuid를 uniqueString 사용하여 고유한 이름을 만들 수 있습니다.
기본값에 대한 함수를 사용하는 템플릿을 newGuid 다시 배포해야 합니다. 재배포할 때 매개 변수 값을 제공하지 않으면 함수는 재평가됩니다. 새 리소스를 만드는 대신 기존 리소스를 업데이트하려면 이전 배포의 매개 변수 값을 제공해야 합니다.
반환 값
고유 식별자 형식의 문자 36자를 포함하고 있는 문자열입니다.
예제
다음 예제에서는 새 식별자가 있는 매개 변수를 보여줍니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"guidValue": {
"type": "string",
"defaultValue": "[newGuid()]"
}
},
"resources": [
],
"outputs": {
"guidOutput": {
"type": "string",
"value": "[parameters('guidValue')]"
}
}
}
이전 예제의 출력은 각 배포마다 다르지만 다음과 유사합니다.
| 이름 | Type | 값 |
|---|---|---|
| guidOutput | string | b76a51fc-bd72-4a77-b9a2-3c29e7d2e551 |
다음 예제에서는 newGuid 함수를 사용하여 스토리지 계정에 대한 고유한 이름을 만듭니다. 이 템플릿은 스토리지 계정이 잠시 동안 존재하고 다시 배포되지 않는 테스트 환경에서 작동할 수 있습니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"guidValue": {
"type": "string",
"defaultValue": "[newGuid()]"
}
},
"variables": {
"storageName": "[concat('storage', uniqueString(parameters('guidValue')))]"
},
"resources": [
{
"type": "Microsoft.Storage/storageAccounts",
"apiVersion": "2025-06-01",
"name": "[variables('storageName')]",
"location": "West US",
"sku": {
"name": "Standard_LRS"
},
"kind": "StorageV2",
"properties": {}
}
],
"outputs": {
"nameOutput": {
"type": "string",
"value": "[variables('storageName')]"
}
}
}
이전 예제의 출력은 각 배포마다 다르지만 다음과 유사합니다.
| 이름 | Type | 값 |
|---|---|---|
| nameOutput | string | storagenziwvyru7uxie |
padLeft
padLeft(valueToPad, totalLength, paddingCharacter)
지정된 총 길이에 도달할 때까지 왼쪽에 문자를 추가하여 오른쪽 맞추어진 문자열을 반환합니다.
Bicep에서 함수를 padLeft 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| valueToPad | 예 | 문자열 또는 int | 오른쪽으로 맞출 값입니다. |
| totalLength | 예 | int | 반환된 문자열에서 문자의 총수입니다. |
| paddingCharacter | 아니요 | 단일 문자 | 총 길이에 도달할 때까지 왼쪽 여백에 사용되는 문자입니다. 기본값은 공백입니다. |
원래 문자열이 채울 문자 수보다 긴 경우 문자가 추가되지 않습니다.
반환 값
최소한 지정된 문자의 수를 포함하는 문자열입니다.
예제
다음 예제에서는 사용자가 제공한 매개 변수 값을 채우기 위해 총 문자 수에 도달할 때까지 0 문자를 추가하는 방법을 보여 있습니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"testString": {
"type": "string",
"defaultValue": "123"
}
},
"resources": [],
"outputs": {
"stringOutput": {
"type": "string",
"value": "[padLeft(parameters('testString'),10,'0')]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| stringOutput | 문자열 | 0000000123 |
replace
replace(originalString, oldString, newString)
다른 문자열로 대체한 어떤 문자열의 인스턴스를 포함한 새 문자열을 반환합니다.
Bicep에서 함수를 replace 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| originalString | 예 | string | 다른 문자열로 대체한 어떤 문자열의 인스턴스를 포함하는 값입니다. |
| oldString | 예 | string | 원래 문자열에서 제거할 문자열입니다. |
| newString | 예 | string | 제거된 문자열 대신 추가할 문자열입니다. |
반환 값
문자가 대체된 문자열입니다.
예제
다음 예제에서는 사용자가 제공한 문자열에서 모든 대시를 제거하는 방법과 문자열의 일부를 다른 대시로 바꾸는 방법을 보여 있습니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"testString": {
"type": "string",
"defaultValue": "123-123-1234"
}
},
"resources": [],
"outputs": {
"firstOutput": {
"type": "string",
"value": "[replace(parameters('testString'),'-', '')]"
},
"secondOutput": {
"type": "string",
"value": "[replace(parameters('testString'),'1234', 'xxxx')]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| firstOutput | 문자열 | 1231231234 |
| secondOutput | 문자열 | 123-123-xxxx |
skip
skip(originalValue, numberToSkip)
지정된 문자 수 이후의 모든 문자를 포함하는 문자열 또는 지정된 요소 수 이후의 모든 요소를 포함하는 배열을 반환합니다.
Bicep에서 함수를 skip 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| originalValue | 예 | 배열 또는 문자열 | 건너뛰는 데 사용할 배열 또는 문자열입니다. |
| numberToSkip | 예 | int | 건너뛸 요소 또는 문자 수입니다. 이 값이 0 이하이면 값의 모든 요소 또는 문자가 반환됩니다. 이 값이 배열 또는 문자열의 길이보다 크면 빈 배열 또는 문자열이 반환됩니다. |
반환 값
배열 또는 문자열입니다.
예제
다음 예제에서는 배열의 지정된 요소 수와 문자열의 지정된 문자 수를 건너뜁니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"testArray": {
"type": "array",
"defaultValue": [
"one",
"two",
"three"
]
},
"elementsToSkip": {
"type": "int",
"defaultValue": 2
},
"testString": {
"type": "string",
"defaultValue": "one two three"
},
"charactersToSkip": {
"type": "int",
"defaultValue": 4
}
},
"resources": [],
"outputs": {
"arrayOutput": {
"type": "array",
"value": "[skip(parameters('testArray'),parameters('elementsToSkip'))]"
},
"stringOutput": {
"type": "string",
"value": "[skip(parameters('testString'),parameters('charactersToSkip'))]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| arrayOutput | 배열 | ["three"] |
| stringOutput | 문자열 | 2개 3개 |
split
split(inputString, delimiter)
지정된 구분 기호로 구분되는 입력 문자열의 부분 문자열을 포함하는 문자열의 배열을 반환합니다.
Bicep에서 함수를 split 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| inputString | 예 | string | 분할할 문자열입니다. |
| delimiter | 예 | 문자열 또는 문자열 배열 | 문자열 분할에 사용할 구분 기호입니다. |
반환 값
문자열 배열입니다.
예제
다음 예제에서는 입력 문자열을 쉼표로 분할하고 다음 문자열을 쉼표 또는 세미콜론으로 분할합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"firstString": {
"type": "string",
"defaultValue": "one,two,three"
},
"secondString": {
"type": "string",
"defaultValue": "one;two,three"
}
},
"variables": {
"delimiters": [ ",", ";" ]
},
"resources": [],
"outputs": {
"firstOutput": {
"type": "array",
"value": "[split(parameters('firstString'),',')]"
},
"secondOutput": {
"type": "array",
"value": "[split(parameters('secondString'),variables('delimiters'))]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| firstOutput | 배열 | [“one”, “two”, “three”] |
| secondOutput | 배열 | [“one”, “two”, “three”] |
startswith
startsWith(stringToSearch, stringToFind)
문자열이 값으로 시작하는지 여부를 결정합니다. 비교는 대/소문자를 구분합니다.
Bicep에서 함수를 startsWith 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| stringToSearch | 예 | string | 찾을 값을 포함하는 값입니다. |
| stringToFind | 예 | string | 찾을 값입니다. |
반환 값
True문자열의 첫 번째 문자 또는 문자가 값과 일치하면 이고, 그렇지 않으면 . False
예제
다음 예제에서는 startsWith 및 endsWith 함수를 사용하는 방법을 보여줍니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"startsTrue": {
"type": "bool",
"value": "[startsWith('abcdef', 'ab')]"
},
"startsCapTrue": {
"type": "bool",
"value": "[startsWith('abcdef', 'A')]"
},
"startsFalse": {
"type": "bool",
"value": "[startsWith('abcdef', 'e')]"
},
"endsTrue": {
"type": "bool",
"value": "[endsWith('abcdef', 'ef')]"
},
"endsCapTrue": {
"type": "bool",
"value": "[endsWith('abcdef', 'F')]"
},
"endsFalse": {
"type": "bool",
"value": "[endsWith('abcdef', 'e')]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| startsTrue | Bool | True |
| startsCapTrue | Bool | True |
| startsFalse | Bool | False |
| endsTrue | Bool | True |
| endsCapTrue | Bool | True |
| endsFalse | Bool | False |
string
string(valueToConvert)
지정한 값을 문자열로 변환합니다.
Bicep에서 함수를 string 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| valueToConvert | 예 | 모두 | 문자열로 변환할 값입니다. 개체 및 배열을 비롯하여 모든 값 형식을 변환할 수 있습니다. |
반환 값
변환된 값의 문자열입니다.
예제
다음 예제에서는 다른 형식의 값을 문자열로 변환하는 방법을 보여 줍니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"testObject": {
"type": "object",
"defaultValue": {
"valueA": 10,
"valueB": "Example Text"
}
},
"testArray": {
"type": "array",
"defaultValue": [
"a",
"b",
"c"
]
},
"testInt": {
"type": "int",
"defaultValue": 5
}
},
"resources": [],
"outputs": {
"objectOutput": {
"type": "string",
"value": "[string(parameters('testObject'))]"
},
"arrayOutput": {
"type": "string",
"value": "[string(parameters('testArray'))]"
},
"intOutput": {
"type": "string",
"value": "[string(parameters('testInt'))]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| objectOutput | 문자열 | {“valueA”:10,“valueB”:“Example Text”} |
| arrayOutput | 문자열 | [“a”,“b”,“c”] |
| intOutput | 문자열 | 5 |
substring
substring(stringToParse, startIndex, length)
지정된 문자 위치에서 시작하고 지정한 개수의 문자를 포함하는 부분 문자열을 반환합니다.
Bicep에서 함수를 substring 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| stringToParse | 예 | string | 부분 문자열을 추출할 원래 문자열입니다. |
| startIndex | 아니요 | int | 부분 문자열의 0부터 시작하는 문자 위치입니다. |
| length | 아니요 | int | 부분 문자열에 대한 문자 수입니다. 문자열 내 위치를 참조해야 합니다. 0 이상이어야 합니다. 생략하면 시작 위치에서 문자열의 나머지 부분이 반환됩니다. |
반환 값
하위 문자열입니다. 또는 길이가 0인 경우 빈 문자열입니다.
설명
함수는 부분 문자열이 문자열의 끝을 넘어 확장되거나 길이가 0보다 작은 경우 실패합니다. 다음 예제에서는 "인덱스 및 길이 매개 변수는 문자열 내의 위치를 참조해야 합니다. 인덱스 매개 변수 : '0', 길이 매개 변수 : '11', 문자열 매개 변수의 길이 : '10'."
"parameters": {
"inputString": {
"type": "string",
"value": "1234567890"
}
}, "variables": {
"prefix": "[substring(parameters('inputString'), 0, 11)]"
}
예제
다음 예제에서는 매개 변수에서 부분 문자열을 추출합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"testString": {
"type": "string",
"defaultValue": "one two three"
}
},
"resources": [],
"outputs": {
"substringOutput": {
"type": "string",
"value": "[substring(parameters('testString'), 4, 3)]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| substringOutput | 문자열 | two |
take
take(originalValue, numberToTake)
배열 또는 문자열을 반환합니다. 배열에는 배열 시작부터 지정된 수의 요소가 있습니다. 문자열은 문자열의 시작 부분부터 지정된 수의 문자를 갖습니다.
Bicep에서 함수를 take 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| originalValue | 예 | 배열 또는 문자열 | 요소를 가져올 배열 또는 문자열입니다. |
| numberToTake | 예 | int | 수락할 요소 또는 문자의 수입니다. 이 값이 0 이하이면 빈 배열 또는 문자열이 반환됩니다. 지정된 배열 또는 문자열의 길이보다 크면 배열 또는 문자열의 모든 요소가 반환됩니다. |
반환 값
배열 또는 문자열입니다.
예제
다음 예제에서는 배열에서 지정된 개수의 요소와 문자열의 문자를 가져옵니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"testArray": {
"type": "array",
"defaultValue": [
"one",
"two",
"three"
]
},
"elementsToTake": {
"type": "int",
"defaultValue": 2
},
"testString": {
"type": "string",
"defaultValue": "one two three"
},
"charactersToTake": {
"type": "int",
"defaultValue": 2
}
},
"resources": [],
"outputs": {
"arrayOutput": {
"type": "array",
"value": "[take(parameters('testArray'),parameters('elementsToTake'))]"
},
"stringOutput": {
"type": "string",
"value": "[take(parameters('testString'),parameters('charactersToTake'))]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| arrayOutput | 배열 | ["one", "two"] |
| stringOutput | 문자열 | On |
toLower
toLower(stringToChange)
지정된 문자열을 소문자로 변환합니다.
Bicep에서 함수를 toLower 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| stringToChange | 예 | string | 소문자로 변환할 값입니다. |
반환 값
소문자로 변환된 문자열입니다.
예제
다음 예제에서는 매개 변수 값을 소문자 및 대문자로 변환합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"testString": {
"type": "string",
"defaultValue": "One Two Three"
}
},
"resources": [],
"outputs": {
"toLowerOutput": {
"type": "string",
"value": "[toLower(parameters('testString'))]"
},
"toUpperOutput": {
"type": "string",
"value": "[toUpper(parameters('testString'))]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| toLowerOutput | 문자열 | 하나 둘 셋 |
| toUpperOutput | 문자열 | 하나 둘 셋 |
toUpper
toUpper(stringToChange)
지정된 문자열을 대문자로 변환합니다.
Bicep에서 함수를 toUpper 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| stringToChange | 예 | string | 대문자로 변환할 값입니다. |
반환 값
대문자로 변환된 문자열입니다.
예제
다음 예제에서는 매개 변수 값을 소문자 및 대문자로 변환합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"testString": {
"type": "string",
"defaultValue": "One Two Three"
}
},
"resources": [],
"outputs": {
"toLowerOutput": {
"type": "string",
"value": "[toLower(parameters('testString'))]"
},
"toUpperOutput": {
"type": "string",
"value": "[toUpper(parameters('testString'))]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| toLowerOutput | 문자열 | 하나 둘 셋 |
| toUpperOutput | 문자열 | 하나 둘 셋 |
trim
trim(stringToTrim)
지정된 문자열에서 모든 선행 및 후행 공백 문자를 제거합니다.
Bicep에서 함수를 trim 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| stringToTrim | 예 | string | 자를 값입니다. |
반환 값
선행 및 후행 공백 문자가 없는 문자열입니다.
예제
다음 예제에서는 매개 변수에서 공백 문자를 트리밍합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"testString": {
"type": "string",
"defaultValue": " one two three "
}
},
"resources": [],
"outputs": {
"return": {
"type": "string",
"value": "[trim(parameters('testString'))]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| return | 문자열 | 하나 둘 셋 |
uniqueString
uniqueString(baseString, ...)
매개 변수로 제공된 값을 기반으로 결정 해시 문자열을 만듭니다.
Bicep에서 함수를 uniqueString 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| baseString | 예 | string | 고유한 문자열을 만들기 위해 해시 함수에서 사용되는 값입니다. |
| 필요한 경우 더 많은 매개 변수 | 아니요 | string | 고유성 수준을 지정하는 값을 만들기 위해 필요한 만큼 문자열을 추가할 수 있습니다. |
설명
이 함수는 리소스의 고유한 이름을 만들어야 할 때 유용합니다. 결과의 고유성 범위를 제한하는 매개 변수 값을 제공합니다. 이름이 구독, 리소스 그룹 또는 배포에 고유한지 여부를 지정할 수 있습니다.
반환된 값은 임의 문자열이 아니라 해시 함수의 결과입니다. 반환된 값은 13자입니다. 전역적으로 고유하지 않습니다. 값과 명명 규칙의 접두사를 결합하여 의미 있는 이름을 만들 수 있습니다. 다음 예제에서는 반환된 값의 형식을 보여 줍니다. 실제 값은 제공된 매개 변수에 따라 달라집니다.
tcvhiyu5h2o5o
다음 예제에서는 일반적으로 사용되는 수준에 대한 고유 값을 만드는 데 사용하는 uniqueString 방법을 보여 줍니다.
구독에 범위가 지정된 고유함
"[uniqueString(subscription().subscriptionId)]"
리소스 그룹에 범위가 지정된 고유함
"[uniqueString(resourceGroup().id)]"
리소스 그룹의 배포에 범위가 지정된 고유함
"[uniqueString(resourceGroup().id, deployment().name)]"
다음 예제에서는 리소스 그룹에 따라 스토리지 계정에 고유한 이름을 만드는 방법을 보여 줍니다. 리소스 그룹 내에서 이름은 동일한 방식으로 생성된 경우 고유하지 않습니다.
"resources": [{
"name": "[concat('storage', uniqueString(resourceGroup().id))]",
"type": "Microsoft.Storage/storageAccounts",
...
템플릿을 배포할 때마다 새 고유 이름을 만들어야 하고 리소스를 업데이트하지 않으려는 경우 함수uniqueString를 utcNow 사용할 수 있습니다. 이 방법은 테스트 환경에서 사용할 수 있습니다. 예제를 보려면 https://docs.microsoft.com/azure/container-apps/azure-resource-manager-api-spec#examples를 참조하세요.
반환 값
13개의 문자를 포함하는 문자열입니다.
예제
다음 예제에서는 uniquestring에서 결과를 반환합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"uniqueRG": {
"type": "string",
"value": "[uniqueString(resourceGroup().id)]"
},
"uniqueDeploy": {
"type": "string",
"value": "[uniqueString(resourceGroup().id, deployment().name)]"
}
}
}
uri
uri(baseUri, relativeUri)
baseUri와 relativeUri 문자열을 결합하여 절대 URI를 만듭니다.
Bicep에서 함수를 uri 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| baseUri | 예 | string | 기본 uri 문자열입니다. 이 테이블 다음에 설명된 대로 후행 슬래시(/)의 처리와 관련된 동작을 주의해서 살펴봅니다. |
| relativeUri | 예 | string | 기본 uri 문자열에 추가할 상대 uri 문자열입니다. |
후행 슬래시로 끝나는 경우
baseUri결과는 단순히baseUri뒤에 잇relativeUri습니다. 선행 슬래시로 시작하는 경우relativeUri후행 슬래시와 선행 슬래시가 하나로 결합됩니다.baseUri후행 슬래시로 끝나지 않으면 두 가지 중 하나가 발생합니다.슬래시가 전혀 없는 경우
baseUri(앞면 근처를//제외하고) 결과가baseUri뒤에 잇relativeUri습니다.슬래시가 있지만 슬래시로 끝나지 않는 경우
baseUri마지막 슬래시 이후의 모든 항목이 제거되고baseUri그 다음에 결과가baseUrirelativeUri나옵니다.
다음 몇 가지 예를 참조하세요.
uri('http://contoso.org/firstpath', 'myscript.sh') -> http://contoso.org/myscript.sh
uri('http://contoso.org/firstpath/', 'myscript.sh') -> http://contoso.org/firstpath/myscript.sh
uri('http://contoso.org/firstpath/', '/myscript.sh') -> http://contoso.org/firstpath/myscript.sh
uri('http://contoso.org/firstpath/azuredeploy.json', 'myscript.sh') -> http://contoso.org/firstpath/myscript.sh
uri('http://contoso.org/firstpath/azuredeploy.json/', 'myscript.sh') -> http://contoso.org/firstpath/azuredeploy.json/myscript.sh
자세한 내용은 baseUriRFC 3986 섹션 5에 지정된 대로 매개 변수와 relativeUri 매개 변수가 확인됩니다.
반환 값
기본 및 상대 값에 대한 절대 URI를 나타내는 문자열입니다.
예제
다음 예제에서는 부모 템플릿의 값을 기반으로 중첩된 템플릿에 대한 링크를 생성하는 방법을 보여줍니다.
"templateLink": "[uri(deployment().properties.templateLink.uri, 'nested/azuredeploy.json')]"
다음 예제 템플릿은 사용 방법을 보여 하며 uriComponentToString다음을 수행uriuriComponent합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"variables": {
"uriFormat": "[uri('http://contoso.com/resources/', 'nested/azuredeploy.json')]",
"uriEncoded": "[uriComponent(variables('uriFormat'))]"
},
"resources": [
],
"outputs": {
"uriOutput": {
"type": "string",
"value": "[variables('uriFormat')]"
},
"componentOutput": {
"type": "string",
"value": "[variables('uriEncoded')]"
},
"toStringOutput": {
"type": "string",
"value": "[uriComponentToString(variables('uriEncoded'))]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| uriOutput | 문자열 | http://contoso.com/resources/nested/azuredeploy.json |
| componentOutput | 문자열 | http%3A%2F%2Fcontoso.com%2Fresources%2Fnested%2Fazuredeploy.json |
| toStringOutput | 문자열 | http://contoso.com/resources/nested/azuredeploy.json |
uriComponent
uricomponent(stringToEncode)
URI를 인코딩합니다.
Bicep에서 함수를 uriComponent 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| stringToEncode | 예 | string | 인코딩할 값입니다. |
반환 값
URI로 인코딩된 값의 문자열입니다.
예제
다음 예제 템플릿은 사용 방법을 보여 하며 uriComponentToString다음을 수행uriuriComponent합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"variables": {
"uriFormat": "[uri('http://contoso.com/resources/', 'nested/azuredeploy.json')]",
"uriEncoded": "[uriComponent(variables('uriFormat'))]"
},
"resources": [
],
"outputs": {
"uriOutput": {
"type": "string",
"value": "[variables('uriFormat')]"
},
"componentOutput": {
"type": "string",
"value": "[variables('uriEncoded')]"
},
"toStringOutput": {
"type": "string",
"value": "[uriComponentToString(variables('uriEncoded'))]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| uriOutput | 문자열 | http://contoso.com/resources/nested/azuredeploy.json |
| componentOutput | 문자열 | http%3A%2F%2Fcontoso.com%2Fresources%2Fnested%2Fazuredeploy.json |
| toStringOutput | 문자열 | http://contoso.com/resources/nested/azuredeploy.json |
uriComponentToString
uriComponentToString(uriEncodedString)
URI로 인코딩된 값의 문자열을 반환합니다.
Bicep에서 함수를 uriComponentToString 사용합니다.
매개 변수
| 매개 변수 | 필수 | Type | 설명 |
|---|---|---|---|
| uriEncodedString | 예 | string | 문자열로 변환할 URI 인코딩 값입니다. |
반환 값
URI로 인코딩된 값의 디코딩된 문자열입니다.
예제
다음 예제에서는 사용 방법을 보여 하며 uriComponentToString다음을 수행uriuriComponent합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"variables": {
"uriFormat": "[uri('http://contoso.com/resources/', 'nested/azuredeploy.json')]",
"uriEncoded": "[uriComponent(variables('uriFormat'))]"
},
"resources": [
],
"outputs": {
"uriOutput": {
"type": "string",
"value": "[variables('uriFormat')]"
},
"componentOutput": {
"type": "string",
"value": "[variables('uriEncoded')]"
},
"toStringOutput": {
"type": "string",
"value": "[uriComponentToString(variables('uriEncoded'))]"
}
}
}
앞의 예제에서 기본값의 출력은 다음과 같습니다.
| 이름 | Type | 값 |
|---|---|---|
| uriOutput | 문자열 | http://contoso.com/resources/nested/azuredeploy.json |
| componentOutput | 문자열 | http%3A%2F%2Fcontoso.com%2Fresources%2Fnested%2Fazuredeploy.json |
| toStringOutput | 문자열 | http://contoso.com/resources/nested/azuredeploy.json |
다음 단계
- ARM 템플릿의 섹션에 대한 설명은 ARM 템플릿의 구조 및 구문 이해를 참조하십시오.
- 여러 템플릿을 병합하려면 Azure 리소스를 배포할 때 연결된 템플릿 및 중첩된 템플릿 사용을 참조하세요.
- 리소스 형식을 만들 때 지정된 횟수만큼 반복하려면 ARM 템플릿의 리소스 반복을 참조하세요.
- 만든 템플릿을 배포하는 방법을 보려면 ARM 템플릿 및 Azure PowerShell을 사용하여 리소스 배포를 참조하세요.