Fungsi string untuk templat ARM
Resource Manager menyediakan fungsi berikut untuk bekerja dengan string di templat Azure Resource Manager (templat ARM):
- base64
- base64ToJson
- base64KeUntai
- concat
- mengandung
- dataUri
- dataUriToString
- kosong
- endsWith
- first
- format
- Guid
- indexOf
- join
- json
- last
- lastIndexOf
- length
- newGuid
- padLeft
- mengganti
- skip
- belah
- startsWith
- tali
- substring
- take
- ToLower
- toUpper
- trim
- uniqueString
- uri
- uriComponent
- uriComponentToString
Tip
Kami merekomendasikan Bicep karena menawarkan kemampuan yang sama dengan templat ARM dan sintaksnya lebih mudah digunakan. Untuk mempelajari selengkapnya, lihat fungsi string.
base64
base64(inputString)
Mengembalikan representasi base64 dari string input.
Pada Bicep, gunakan fungsi base64.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
inputString | Ya | string | Nilai yang dikembalikan sebagai representasi base64. |
Nilai hasil
String yang berisi representasi base64.
Contoh
Contoh berikut menunjukkan cara menggunakan fungsi base64
.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"stringData": {
"type": "string",
"defaultValue": "one, two, three"
},
"jsonFormattedData": {
"type": "string",
"defaultValue": "{'one': 'a', 'two': 'b'}"
}
},
"variables": {
"base64String": "[base64(parameters('stringData'))]",
"base64Object": "[base64(parameters('jsonFormattedData'))]"
},
"resources": [
],
"outputs": {
"base64Output": {
"type": "string",
"value": "[variables('base64String')]"
},
"toStringOutput": {
"type": "string",
"value": "[base64ToString(variables('base64String'))]"
},
"toJsonOutput": {
"type": "object",
"value": "[base64ToJson(variables('base64Object'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
base64Output | String | b25lLCB0d28sIHRocmVl |
toStringOutput | String | one, two, three |
toJsonOutput | Objek | {"one": "a", "two": "b"} |
base64ToJson
base64ToJson(base64Value)
Mengonversi representasi base64 menjadi objek JSON.
Pada Bicep, gunakan fungsi base64ToJson.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
base64Value | Ya | string | Representasi base64 untuk dikonversi ke objek JSON. |
Nilai hasil
Sebuah objek JSON.
Contoh
Contoh berikut menggunakan fungsi base64ToJson
untuk mengonversi nilai base64:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"stringData": {
"type": "string",
"defaultValue": "one, two, three"
},
"jsonFormattedData": {
"type": "string",
"defaultValue": "{'one': 'a', 'two': 'b'}"
}
},
"variables": {
"base64String": "[base64(parameters('stringData'))]",
"base64Object": "[base64(parameters('jsonFormattedData'))]"
},
"resources": [
],
"outputs": {
"base64Output": {
"type": "string",
"value": "[variables('base64String')]"
},
"toStringOutput": {
"type": "string",
"value": "[base64ToString(variables('base64String'))]"
},
"toJsonOutput": {
"type": "object",
"value": "[base64ToJson(variables('base64Object'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
base64Output | String | b25lLCB0d28sIHRocmVl |
toStringOutput | String | one, two, three |
toJsonOutput | Objek | {"one": "a", "two": "b"} |
base64KeUntai
base64ToString(base64Value)
Mengonversi representasi base64 menjadi string.
Pada Bicep, gunakan fungsi base64ToString.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
base64Value | Ya | string | Representasi base64 untuk dikonversi ke string. |
Nilai hasil
String dari nilai base64 yang dikonversi.
Contoh
Contoh berikut menggunakan fungsi base64ToString
untuk mengonversi nilai base64:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"stringData": {
"type": "string",
"defaultValue": "one, two, three"
},
"jsonFormattedData": {
"type": "string",
"defaultValue": "{'one': 'a', 'two': 'b'}"
}
},
"variables": {
"base64String": "[base64(parameters('stringData'))]",
"base64Object": "[base64(parameters('jsonFormattedData'))]"
},
"resources": [
],
"outputs": {
"base64Output": {
"type": "string",
"value": "[variables('base64String')]"
},
"toStringOutput": {
"type": "string",
"value": "[base64ToString(variables('base64String'))]"
},
"toJsonOutput": {
"type": "object",
"value": "[base64ToJson(variables('base64Object'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
base64Output | String | b25lLCB0d28sIHRocmVl |
toStringOutput | String | one, two, three |
toJsonOutput | Objek | {"one": "a", "two": "b"} |
concat
concat(arg1, arg2, arg3, ...)
Menggabungkan beberapa nilai string dan mengembalikan string yang digabungkan, atau menggabungkan beberapa array dan mengembalikan array yang digabungkan.
Di Bicep, gunakan interpolasi string alih-alih concat()
fungsi untuk meningkatkan keterbacaan. Namun, dalam beberapa kasus seperti penggantian string dalam string multibaris, Anda mungkin perlu kembali menggunakan concat()
fungsi atau replace()
fungsi .
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
arg1 | Ya | string atau array | String atau array pertama untuk perangkaian. |
lebih banyak argumen | No | string atau array | Lebih banyak string atau array secara berurutan untuk perangkaian. |
Fungsi ini dapat mengambil sejumlah argumen, dan dapat menerima string atau array untuk parameter. Namun, Anda tidak dapat menyediakan array dan string untuk parameter. String hanya digabungkan dengan string lainnya.
Nilai hasil
String atau array nilai yang digabungkan.
Contoh
Contoh berikut menunjukkan cara menggabungkan dua nilai string dan mengembalikan string gabungan.
{
"$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))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
concatOutput | String | prefix-5yj4yjf5mbg72 |
Contoh berikut menunjukkan cara menggabungkan dua array.
{
"$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'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
return | Array | ["1-1", "1-2", "1-3", "2-1", "2-2", "2-3"] |
mengandung
contains(container, itemToFind)
Memeriksa apakah array berisi nilai, objek berisi kunci, atau untai (karakter) berisi sub-untai (karakter). Perbandingan untai (karakter) peka terhadap huruf besar/kecil. Namun, ketika pengujian, jika objek berisi kunci, perbandingannya tidak peka huruf besar/kecil.
Di Bicep, gunakan fungsi contains.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
kontainer | Ya | array, objek, atau string | Nilai yang berisi nilai untuk ditemukan. |
itemToFind | Ya | string atau int | Nilai untuk ditemukan. |
Nilai hasil
True
jika item ditemukan; jika tidak, False
.
Contoh
Contoh berikut menunjukkan cara menggunakan berisi dengan jenis yang berbeda:
{
"$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')]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
stringTrue | Bool | Benar |
stringFalse | Bool | Salah |
objectTrue | Bool | Benar |
objectFalse | Bool | Salah |
arrayTrue | Bool | Benar |
arrayFalse | Bool | Salah |
dataUri
dataUri(stringToConvert)
Mengonversi nilai menjadi URI data.
Pada Bicep, gunakan fungsi dataUri.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
stringToConvert | Ya | string | Nilai untuk dikonversi menjadi URI data. |
Nilai hasil
String yang diformat sebagai URI data.
Contoh
Contoh berikut mengonversi nilai menjadi URI data, dan mengonversi URI data menjadi string.
{
"$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'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
dataUriOutput | String | data:text/plain;charset=utf8;base64,SGVsbG8= |
toStringOutput | String | Hello, World! |
dataUriToString
dataUriToString(dataUriToConvert)
Mengonversi nilai berformat URI data menjadi string.
Pada Bicep, gunakan fungsi dataUriToString.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
dataUriToConvert | Ya | string | Nilai URI data untuk dikonversi. |
Nilai hasil
String yang berisi nilai yang dikonversi.
Contoh
Templat contoh berikut mengonversi nilai menjadi URI data, dan mengonversi URI data menjadi string.
{
"$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'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
dataUriOutput | String | data:text/plain;charset=utf8;base64,SGVsbG8= |
toStringOutput | String | Hello, World! |
kosong
empty(itemToTest)
Menentukan apakah array, objek, atau untai (karakter) kosong.
Di Bicep, gunakan fungsi empty.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
itemToTest | Ya | array, objek, atau string | Nilai untuk memeriksa apakah nilainya kosong. |
Nilai hasil
Mengembalikan True
jika nilai kosong; jika tidak, False
.
Contoh
Contoh berikut ini memeriksa apakah array, objek, dan string kosong.
{
"$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'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
arrayEmpty | Bool | Benar |
objectEmpty | Bool | Benar |
stringEmpty | Bool | Benar |
endsWith
endsWith(stringToSearch, stringToFind)
Menentukan apakah untai berakhir dengan nilai. Perbandingannya adalah tidak peka huruf besar/kecil.
Pada Bicep, gunakan fungsi endsWith.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
stringToSearch | Ya | string | Nilai yang berisi nilai untuk ditemukan. |
stringToFind | Ya | string | Nilai untuk ditemukan. |
Nilai hasil
True
jika karakter atau karakter terakhir dari string cocok dengan nilai; jika tidak, False
.
Contoh
Contoh berikut menunjukkan cara penggunaan fungsi startsWith
dan 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')]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
startsTrue | Bool | Benar |
startsCapTrue | Bool | Benar |
startsFalse | Bool | Salah |
endsTrue | Bool | Benar |
endsCapTrue | Bool | Benar |
endsFalse | Bool | Salah |
pertama
first(arg1)
Mengembalikan karakter pertama dari string, atau elemen pertama array. Jika string kosong diberikan, fungsi akan menghasilkan string kosong. Dalam kasus array kosong, fungsi mengembalikan null
.
Di Bicep, gunakan fungsi first.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
arg1 | Ya | array atau string | Nilai untuk mengambil elemen atau karakter pertama. |
Nilai hasil
String karakter pertama, atau jenis (string, int, array, atau objek) dari elemen pertama dalam array.
Contoh
Contoh berikut menunjukkan cara menggunakan fungsi pertama dengan array dan string.
{
"$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')]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
arrayOutput | String | satu |
stringOutput | String | O |
format
format(formatString, arg1, arg2, ...)
Membuat string yang diformat dari nilai input.
Pada Bicep, gunakan fungsi format.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
formatString | Ya | string | String format komposit. |
arg1 | Ya | string, bilangan bulat, atau boolean | Nilai yang akan disertakan dalam string yang diformat. |
lebih banyak argumen | No | string, bilangan bulat, atau boolean | Lebih banyak nilai untuk disertakan dalam string yang diformat. |
Keterangan
Gunakan fungsi ini untuk memformat string di templat Anda. Ini menggunakan opsi pemformatan yang sama dengan metode System.String.Format di .NET.
Contoh
Contoh berikut memperlihatkan cara menggunakan fungsi 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'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
formatTest | String | Hello, User. Formatted number: 8,175,133 |
guid
guid(baseString, ...)
Membuat nilai dalam format pengidentifikasi unik global berdasarkan nilai yang disediakan sebagai parameter.
Pada Bicep, gunakan fungsi guid.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
baseString | Ya | string | Nilai yang digunakan dalam fungsi hash untuk membuat GUID. |
lebih banyak parameter sesuai kebutuhan | No | string | Anda dapat menambahkan string sebanyak yang diperlukan untuk membuat nilai yang menentukan tingkat keunikan. |
Keterangan
Fungsi ini berguna ketika Anda perlu membuat nilai dalam format pengidentifikasi yang unik secara global. Anda menyediakan nilai parameter yang membatasi cakupan keunikan untuk hasilnya. Anda dapat menentukan apakah nama tersebut unik hingga ke langganan, grup sumber daya, atau penyebaran.
Nilai yang dikembalikan bukan string acak, melainkan hasil dari fungsi hash pada parameter. Nilai yang dikembalikan memiliki panjang 36 karakter. Ini tidak unik secara global. Untuk membuat GUID baru yang tidak didasarkan pada nilai hash parameter, gunakan fungsi newGuid.
Contoh berikut memperlihatkan cara menggunakan guid untuk membuat nilai unik untuk tingkat yang umum digunakan.
Cakupan unik untuk langganan
"[guid(subscription().subscriptionId)]"
Cakupan unik untuk grup sumber daya
"[guid(resourceGroup().id)]"
Cakupan unik untuk penyebaran untuk grup sumber daya
"[guid(resourceGroup().id, deployment().name)]"
Fungsi ini guid
mengimplementasikan algoritma dari RFC 4122 ยง4,3. Sumber asli dapat ditemukan di GuidUtility dengan beberapa modifikasi.
Nilai hasil
String yang berisi 36 karakter dalam format pengidentifikasi unik global.
Contoh
Contoh berikut mengembalikan hasil dari 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)
Mengembalikan posisi pertama dari nilai dalam string. Perbandingannya adalah tidak peka huruf besar/kecil.
Pada Bicep, gunakan fungsi indexOf.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
stringToSearch | Ya | string | Nilai yang berisi nilai untuk ditemukan. |
stringToFind | Ya | string | Nilai untuk ditemukan. |
Nilai hasil
Bilangan bulat yang mewakili posisi item untuk ditemukan. Nilainya berbasis nol. Jika item tidak ditemukan, -1 dikembalikan.
Contoh
Contoh berikut menunjukkan cara penggunaan fungsi indexOf
dan 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')]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
firstT | Int | 0 |
lastT | Int | 3 |
firstString | Int | 2 |
lastString | Int | 0 |
notFound | Int | -1 |
join
join(inputArray, delimiter)
Menggabungkan array string menjadi satu string, dipisahkan menggunakan pemisah.
Di Bicep, gunakan fungsi gabung.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
inputArray | Ya | array string | Array string untuk bergabung. |
delimiter | Ya | Pemisah yang digunakan untuk memisahkan string. |
Nilai hasil
String .
Contoh
Contoh berikut menggabungkan array string input ke dalam string yang dibatasi dengan menggunakan pemisah yang berbeda.
{
"$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'), ';')]"
}
}
}
Output dari contoh sebelumnya adalah:
Nama | Jenis | Nilai |
---|---|---|
firstOutput | String | "satu,dua,tiga" |
secondOutput | String | "satu;dua;tiga" |
json
json(arg1)
Mengonversi string JSON yang valid menjadi jenis data JSON. Untuk informasi selengkapnya, lihat fungsi json.
Di Bicep, gunakan fungsi json.
terakhir
last(arg1)
Mengembalikan karakter terakhir dari string, atau elemen terakhir dari array.
Di Bicep, gunakan fungsi last.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
arg1 | Ya | array atau string | Nilai untuk mengambil elemen atau karakter terakhir. |
Nilai hasil
String karakter terakhir, atau jenis (string, int, array, atau objek) dari elemen pertama dalam array.
Contoh
Contoh berikut menunjukkan cara menggunakan fungsi last
dengan array dan string.
{
"$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')]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
arrayOutput | String | tiga |
stringOutput | String | e |
lastIndexOf
lastIndexOf(stringToSearch, stringToFind)
Mengembalikan posisi terakhir dari nilai dalam string. Perbandingannya adalah tidak peka huruf besar/kecil.
Pada Bicep, gunakan fungsi lastIndexOf.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
stringToSearch | Ya | string | Nilai yang berisi nilai untuk ditemukan. |
stringToFind | Ya | string | Nilai untuk ditemukan. |
Nilai hasil
Bilangan bulat yang mewakili posisi item untuk ditemukan. Nilainya berbasis nol. Jika item tidak ditemukan, -1 dikembalikan.
Contoh
Contoh berikut menunjukkan cara penggunaan fungsi indexOf
dan 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')]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
firstT | Int | 0 |
lastT | Int | 3 |
firstString | Int | 2 |
lastString | Int | 0 |
notFound | Int | -1 |
length
length(string)
Mengembalikan jumlah karakter dalam string, elemen dalam array, atau properti tingkat akar dalam objek.
Di Bicep, gunakan fungsi length.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
arg1 | Ya | array, untai (karakter), atau objek | Array yang digunakan untuk mendapatkan jumlah elemen, untai (karakter) yang digunakan untuk mendapatkan jumlah karakter, atau objek yang digunakan untuk mendapatkan jumlah properti tingkat root. |
Nilai hasil
Int.
Contoh
Contoh berikut menunjukkan cara menggunakan fungsi length
dengan array dan string:
{
"$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'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
arrayLength | Int | 3 |
stringLength | Int | 13 |
objectLength | Int | 4 |
newGuid
newGuid()
Mengembalikan nilai dalam format pengidentifikasi unik global. Fungsi ini hanya dapat digunakan dalam nilai default untuk parameter.
Pada Bicep, gunakan fungsi newGuid.
Keterangan
Anda hanya bisa menggunakan fungsi ini dalam ekspresi untuk nilai default parameter. Menggunakan fungsi ini di tempat lain dalam templat mengembalikan kesalahan. Fungsi ini tidak diizinkan di bagian lain templat karena mengembalikan nilai yang berbeda setiap kali disebut. Menyebarkan template yang sama dengan parameter yang sama tidak akan menghasilkan hasil sama yang terpercaya.
Fungsi newGuid berbeda dari fungsi guid karena tidak mengambil parameter apa pun. Saat Anda memanggil guid dengan parameter yang sama, panduan akan mengembalikan pengidentifikasi yang sama setiap waktu. Gunakan guid saat Anda perlu menghasilkan GUID yang sama untuk lingkungan tertentu. Gunakan newGuid saat Anda memerlukan pengidentifikasi yang berbeda setiap waktu, seperti menyebarkan sumber daya ke lingkungan pengujian.
Fungsi newGuid menggunakan struktur Guid dalam .NET Framework untuk menghasilkan pengidentifikasi yang unik secara global.
Jika Anda menggunakan opsi untuk menyebar ulang penyebaran yang berhasil sebelumnya, dan penyebaran sebelumnya menyertakan parameter yang menggunakan newGuid, parameter tidak dievaluasi ulang. Sebaliknya, nilai parameter dari penyebaran sebelumnya secara otomatis digunakan kembali dalam penyebaran putar kembali.
Dalam lingkungan pengujian, Anda mungkin perlu berulang kali menyebarkan sumber daya yang hanya hidup untuk waktu yang singkat. Daripada mengonstruksi nama unik, Anda dapat menggunakan newGuid dengan uniqueString untuk membuat nama unik.
Hati-hati menyebar ulang templat yang bergantung pada fungsi newGuid untuk nilai default. Ketika Anda menyebar ulang dan tidak memberikan nilai untuk parameter, fungsi tersebut dievaluasi kembali. Jika Anda ingin memperbarui sumber daya yang ada daripada membuat yang baru, berikan nilai parameter dari penyebaran sebelumnya.
Nilai hasil
String yang berisi 36 karakter dalam format pengidentifikasi unik global.
Contoh
Contoh berikut memperlihatkan parameter dengan pengidentifikasi baru.
{
"$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')]"
}
}
}
Keluaran dari contoh sebelumnya bervariasi untuk setiap penyebaran tetapi akan mirip dengan:
Nama | Jenis | Nilai |
---|---|---|
guidOutput | string | b76a51fc-bd72-4a77-b9a2-3c29e7d2e551 |
Contoh berikut menggunakan fungsi newGuid
untuk membuat nama unik untuk akun penyimpanan. Templat ini mungkin berfungsi untuk lingkungan pengujian di mana akun penyimpanan ada untuk waktu yang singkat dan tidak disebar ulang.
{
"$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": "2021-04-01",
"name": "[variables('storageName')]",
"location": "West US",
"sku": {
"name": "Standard_LRS"
},
"kind": "StorageV2",
"properties": {}
}
],
"outputs": {
"nameOutput": {
"type": "string",
"value": "[variables('storageName')]"
}
}
}
Keluaran dari contoh sebelumnya bervariasi untuk setiap penyebaran tetapi akan mirip dengan:
Nama | Jenis | Nilai |
---|---|---|
nameOutput | string | storagenziwvyru7uxie |
padLeft
padLeft(valueToPad, totalLength, paddingCharacter)
Mengembalikan string rata kanan dengan menambahkan karakter ke kiri hingga mencapai total panjang yang ditentukan.
Pada Bicep, gunakan fungsi padLeft.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
valueToPad | Ya | string atau int | Nilai untuk rata kanan. |
totalLength | Ya | int | Jumlah total karakter dalam string yang dikembalikan. |
paddingCharacter | No | karakter tunggal | Karakter yang digunakan untuk pengisi kiri hingga total panjang tercapai. Nilai defaultnya adalah sebuah spasi. |
Jika string asli lebih panjang dari jumlah karakter yang diisi, tidak ada karakter yang ditambahkan.
Nilai hasil
String dengan setidaknya jumlah karakter yang ditentukan.
Contoh
Contoh berikut memperlihatkan cara mengisi nilai parameter yang disediakan pengguna dengan menambahkan karakter nol hingga nilai parameter mencapai jumlah total karakter.
{
"$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')]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
stringOutput | String | 0000000123 |
mengganti
replace(originalString, oldString, newString)
Mengembalikan string baru dengan semua contoh dari satu string yang digantikan oleh string lain.
Pada Bicep, gunakan fungsi replace.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
originalString | Ya | string | Nilai yang memiliki semua instans dari satu string digantikan oleh string lain. |
oldString | Ya | string | String yang akan dihapus dari string asli. |
newString | Ya | string | String untuk ditambahkan menggantikan string yang dihapus. |
Nilai hasil
String dengan karakter yang diganti.
Contoh
Contoh berikut memperlihatkan cara menghapus semua tanda hubung dari untai (karakter) yang disediakan pengguna, dan cara mengganti bagian untai (karakter) dengan untai (karakter) lain.
{
"$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')]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
firstOutput | String | 1231231234 |
secondOutput | String | 123-123-xxxx |
skip
skip(originalValue, numberToSkip)
Mengembalikan string dengan semua karakter setelah jumlah karakter yang ditentukan, atau array dengan semua elemen setelah jumlah elemen yang ditentukan.
Di Bicep, gunakan fungsi skip.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
originalValue | Ya | array atau string | Array atau string yang digunakan untuk melompati. |
numberToSkip | Ya | int | Jumlah elemen atau karakter yang akan dilompati. Jika nilai ini adalah 0 atau kurang, semua elemen atau karakter dalam nilai dikembalikan. Jika lebih besar dari panjang array atau string, array atau string kosong akan dikembalikan. |
Nilai hasil
Array atau string.
Contoh
Contoh berikut melompati jumlah elemen yang ditentukan dalam array, dan jumlah karakter yang ditentukan dalam string.
{
"$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'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
arrayOutput | Array | ["three"] |
stringOutput | String | dua tiga |
belah
split(inputString, delimiter)
Mengembalikan array string yang berisi substring dari string input yang dipisah oleh pemisah yang ditentukan.
Pada Bicep, gunakan fungsi split.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
inputString | Ya | string | String untuk dipisahkan. |
delimiter | Ya | string atau array string | Pemisah yang digunakan untuk memisahkan string. |
Nilai hasil
Array string.
Contoh
Contoh berikut membagi string input dengan koma, dan dengan koma atau titik koma.
{
"$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'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
firstOutput | Array | ["one", "two", "three"] |
secondOutput | Array | ["one", "two", "three"] |
startsWith
startsWith(stringToSearch, stringToFind)
Menentukan apakah string memulai dengan nilai. Perbandingannya adalah tidak peka huruf besar/kecil.
Pada Bicep, gunakan fungsi startsWith.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
stringToSearch | Ya | string | Nilai yang berisi nilai untuk ditemukan. |
stringToFind | Ya | string | Nilai untuk ditemukan. |
Nilai hasil
True
jika karakter pertama atau karakter string cocok dengan nilai; jika tidak, False
.
Contoh
Contoh berikut menunjukkan cara penggunaan fungsi startsWith
dan 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')]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
startsTrue | Bool | Benar |
startsCapTrue | Bool | Benar |
startsFalse | Bool | Salah |
endsTrue | Bool | Benar |
endsCapTrue | Bool | Benar |
endsFalse | Bool | Salah |
string
string(valueToConvert)
Mengonversi nilai yang ditentukan menjadi string.
Pada Bicep, gunakan fungsi string.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
valueToConvert | Ya | Mana pun | Nilai untuk dikonversi menjadi string. Jenis nilai apa pun dapat dikonversi, termasuk objek dan array. |
Nilai hasil
String dari nilai yang dikonversi.
Contoh
Contoh berikut menunjukkan cara mengonversi berbagai jenis nilai menjadi string.
{
"$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'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
objectOutput | String | {"valueA":10,"valueB":"Example Text"} |
arrayOutput | String | ["a","b","c"] |
intOutput | String | 5 |
substring
substring(stringToParse, startIndex, length)
Mengembalikan substring yang dimulai pada posisi karakter yang ditentukan dan berisi jumlah karakter yang ditentukan.
Pada Bicep, gunakan fungsi substring.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
stringToParse | Ya | string | String asli dari substring yang diekstrak. |
startIndex | No | int | Posisi karakter awal berbasis nol untuk substring. |
length | No | int | Jumlah karakter untuk substring. Harus merujuk ke lokasi dalam string. Harus nol atau lebih besar. Jika dihilangkan, sisa string dari posisi awal akan ditampilkan. |
Nilai hasil
Substring. Atau, string kosong jika panjangnya nol.
Keterangan
Fungsi gagal ketika substring meluas melampaui akhir string, atau ketika panjang kurang dari nol. Contoh berikut gagal dengan kesalahan "Parameter indeks dan panjang harus merujuk ke lokasi dalam string. Parameter indeks: '0', parameter panjang: '11', panjang parameter string: '10'.".
"parameters": {
"inputString": {
"type": "string",
"value": "1234567890"
}
}, "variables": {
"prefix": "[substring(parameters('inputString'), 0, 11)]"
}
Contoh
Contoh berikut mengekstrak substring dari parameter.
{
"$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)]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
substringOutput | String | two |
take
take(originalValue, numberToTake)
Mengembalikan array atau string. Array memiliki jumlah elemen yang ditentukan sejak awal array. Sebuah string memiliki jumlah karakter yang ditentukan dari awal string.
Di Bicep, gunakan fungsi take.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
originalValue | Ya | array atau string | Array atau string untuk mengambil elemen. |
numberToTake | Ya | int | Jumlah elemen atau karakter yang akan diambil. Jika nilai ini adalah 0 atau kurang, array atau string kosong dikembalikan. Jika lebih besar dari panjang array atau string yang diberikan, semua elemen dalam array atau string dikembalikan. |
Nilai hasil
Array atau string.
Contoh
Contoh berikut mengambil jumlah elemen yang ditentukan dari array, dan karakter dari string.
{
"$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'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
arrayOutput | Array | ["one", "two"] |
stringOutput | String | aktif |
toLower
toLower(stringToChange)
Mengonversi string yang ditentukan menjadi huruf kecil.
Pada Bicep, gunakan fungsi toLower.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
stringToChange | Ya | string | Nilai untuk dikonversi ke huruf kecil. |
Nilai hasil
String untuk dikonversi ke huruf kecil.
Contoh
Contoh berikut mengonversi nilai parameter menjadi huruf kecil dan menjadi huruf besar.
{
"$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'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
toLowerOutput | String | one two three |
toLowerOutput | String | ONE TWO THREE |
toUpper
toUpper(stringToChange)
Mengonversi string yang ditentukan menjadi huruf besar.
Pada Bicep, gunakan fungsi toUpper.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
stringToChange | Ya | string | Nilai untuk dikonversi ke huruf besar. |
Nilai hasil
String untuk dikonversi ke huruf besar.
Contoh
Contoh berikut mengonversi nilai parameter menjadi huruf kecil dan menjadi huruf besar.
{
"$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'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
toLowerOutput | String | one two three |
toLowerOutput | String | ONE TWO THREE |
trim
trim(stringToTrim)
Menghapus semua karakter spasi putih berikutnya dan jarak antar baris dari string yang ditentukan.
Pada Bicep, gunakan fungsi trim.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
stringToTrim | Ya | string | Nilai untuk dipangkas. |
Nilai hasil
String tanpa karakter spasi putih berikutnya dan jarak antar baris.
Contoh
Contoh berikut memangkas karakter spasi putih dari parameter.
{
"$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'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
return | String | one two three |
uniqueString
uniqueString(baseString, ...)
Membuat string hash deterministik berdasarkan nilai yang disediakan sebagai parameter.
Pada Bicep, gunakan fungsi uniqueString.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
baseString | Ya | string | Nilai yang digunakan dalam fungsi hash untuk membuat string unik. |
lebih banyak parameter sesuai kebutuhan | No | string | Anda dapat menambahkan string sebanyak yang diperlukan untuk membuat nilai yang menentukan tingkat keunikan. |
Keterangan
Fungsi ini berguna ketika Anda perlu membuat nama unik untuk sumber daya. Anda menyediakan nilai parameter yang membatasi cakupan keunikan untuk hasilnya. Anda dapat menentukan apakah nama tersebut unik hingga ke langganan, grup sumber daya, atau penyebaran.
Nilai yang dikembalikan bukan string acak, melainkan hasil dari fungsi hash pada parameter. Nilai yang dikembalikan memiliki panjang 13 karakter. Ini tidak unik secara global. Anda mungkin ingin menggabungkan nilai dengan prefiks dari konvensi penamaan Anda untuk membuat nama yang bermakna. Contoh berikut memperlihatkan format nilai yang dikembalikan. Nilai aktual bervariasi menurut parameter yang disediakan.
tcvhiyu5h2o5o
Contoh berikut menunjukkan cara menggunakan uniqueString
untuk membuat nilai unik untuk tingkat yang umum digunakan.
Cakupan unik untuk langganan
"[uniqueString(subscription().subscriptionId)]"
Cakupan unik untuk grup sumber daya
"[uniqueString(resourceGroup().id)]"
Cakupan unik untuk penyebaran untuk grup sumber daya
"[uniqueString(resourceGroup().id, deployment().name)]"
Contoh berikut memperlihatkan cara membuat nama unik untuk akun penyimpanan berdasarkan grup sumber daya Anda. Di dalam grup sumber daya, namanya tidak unik jika dikonstruksi dengan cara yang sama.
"resources": [{
"name": "[concat('storage', uniqueString(resourceGroup().id))]",
"type": "Microsoft.Storage/storageAccounts",
...
Jika perlu membuat nama unik baru setiap kali menyebarkan templat, dan tidak bermaksud memperbarui sumber daya, Anda dapat menggunakan fungsi utcNow dengan uniqueString
. Anda dapat menggunakan pendekatan ini di lingkungan pengujian. Misalnya, lihat utcNow.
Nilai hasil
String berisi 13 karakter.
Contoh
Contoh berikut mengembalikan hasil dari 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)
Membuat URI absolut dengan menggabungkan baseUri dan string relativeUri.
Pada Bicep, gunakan fungsi uri.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
baseUri | Ya | string | String uri dasar. Berhati-hatilah untuk mengamati perilaku tentang penanganan garis miring berikutnya (/ ), seperti yang dijelaskan pada tabel berikut. |
relativeUri | Ya | string | String uri relatif untuk ditambahkan ke string uri dasar. |
Jika
baseUri
diakhir dengan garis miring berikutnya, hasilnya hanyabaseUri
diikuti olehrelativeUri
. JikarelativeUri
juga dimulai dengan garis miring terkemuka, garis miring berikutnya dan garis miring terkemuka akan digabungkan menjadi satu.Jika
baseUri
tidak berakhir dengan garis miring berikutnya, salah satu dari dua hal terjadi.Jika
baseUri
tidak memiliki garis miring sama sekali (selain dari//
dekat bagian depan) hasilnyabaseUri
diikuti olehrelativeUri
.Jika
baseUri
memiliki beberapa garis miring, tetapi tidak berakhir dengan garis miring, semuanya dari garis miring terakhir dan selanjutnya dihapus danbaseUri
hasilnyabaseUri
diikuti olehrelativeUri
.
Berikut adalah beberapa contoh:
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
Untuk detail lengkapnya, baseUri
parameter dan relativeUri
diselesaikan seperti yang ditentukan dalam RFC 3986, bagian 5.
Nilai hasil
String yang mewakili URI absolut untuk nilai dasar dan relatif.
Contoh
Contoh berikut memperlihatkan cara mengonstruksi tautan ke templat berlapis berdasarkan nilai templat induk.
"templateLink": "[uri(deployment().properties.templateLink.uri, 'nested/azuredeploy.json')]"
Contoh templat berikut menunjukkan cara uri
, uriComponent
, dan uriComponentToString
.
{
"$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'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
uriOutput | String | http://contoso.com/resources/nested/azuredeploy.json |
componentOutput | String | http%3A%2F%2Fcontoso.com%2Fresources%2Fnested%2Fazuredeploy.json |
toStringOutput | String | http://contoso.com/resources/nested/azuredeploy.json |
uriComponent
uricomponent(stringToEncode)
Mengkodekan URI.
Pada Bicep, gunakan fungsi uriComponent.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
stringToEncode | Ya | string | Nilai yang akan dikodekan. |
Nilai hasil
String nilai yang dikodekan URI.
Contoh
Contoh templat berikut menunjukkan cara uri
, uriComponent
, dan uriComponentToString
.
{
"$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'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
uriOutput | String | http://contoso.com/resources/nested/azuredeploy.json |
componentOutput | String | http%3A%2F%2Fcontoso.com%2Fresources%2Fnested%2Fazuredeploy.json |
toStringOutput | String | http://contoso.com/resources/nested/azuredeploy.json |
uriComponentToString
uriComponentToString(uriEncodedString)
Mengembalikan string nilai yang dikodekan URI.
Pada Bicep, gunakan fungsi uriComponentToString.
Parameter
Parameter | Wajib | Tipe | Deskripsi |
---|---|---|---|
uriEncodedString | Ya | string | Nilai yang dikodekan URI untuk dikonversi menjadi string. |
Nilai hasil
String yang dikodekan dari nilai yang dikodekan URI.
Contoh
Contoh berikut menunjukkan cara menggunakan uri
, uriComponent
, dan uriComponentToString
.
{
"$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'))]"
}
}
}
Output dari contoh sebelumnya dengan nilai default adalah:
Nama | Jenis | Nilai |
---|---|---|
uriOutput | String | http://contoso.com/resources/nested/azuredeploy.json |
componentOutput | String | http%3A%2F%2Fcontoso.com%2Fresources%2Fnested%2Fazuredeploy.json |
toStringOutput | String | http://contoso.com/resources/nested/azuredeploy.json |
Langkah berikutnya
- Untuk deskripsi bagian-bagian dalam templat ARM, lihat Memahami struktur dan sintaksis templat ARM.
- Untuk menggabungkan beberapa templat, lihat Menggunakan templat yang ditautkan dan templat berlapis saat menyebarkan sumber daya Azure.
- Untuk mengulang jumlah waktu yang ditentukan saat membuat jenis sumber daya, lihat Perulangan sumber daya di templat ARM.
- Untuk melihat cara menyebarkan templat yang telah Anda buat, lihat Menyebarkan sumber daya dengan templat ARM dan Azure PowerShell.