Bagikan melalui


Fungsi string untuk templat ARM

Resource Manager menyediakan fungsi berikut untuk bekerja dengan string di templat Azure Resource Manager (templat ARM):

Tip

Bicep direkomendasikan 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.

Di Bicep, gunakan base64 fungsi .

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 base64 fungsi :

{
  "$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')]"
    }
  }
}

Output nilai default dari contoh sebelumnya adalah:

Nama Tipe Nilai
base64Output String b25lLCB0d28sIHRocmVl
toStringOutput String Satu dua tiga
toJsonOutput Objek {"one": "a", "two": "b"}

base64ToJson

base64ToJson(base64Value)

Mengonversi representasi base64 menjadi objek JSON.

Di Bicep, gunakan base64ToJson fungsi .

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": {
    "storageResourceGroup": {
      "type": "string"
    },
    "storageAccountName": {
      "type": "string"
    }
  },
  "resources": [],
  "outputs": {
    "ExistingStorage": {
      "type": "object",
      "value": "[reference(resourceId(parameters('storageResourceGroup'), 'Microsoft.Storage/storageAccounts', parameters('storageAccountName')), '2021-04-01')]"
    }
  }
}

Output nilai default dari contoh sebelumnya adalah:

Nama Tipe Nilai
base64Output String b25lLCB0d28sIHRocmVl
toStringOutput String Satu dua tiga
toJsonOutput Objek {"one": "a", "two": "b"}

base64KeUntai

base64ToString(base64Value)

Mengonversi representasi base64 menjadi string.

Di Bicep, gunakan base64ToString fungsi .

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": {
    "storageResourceGroup": {
      "type": "string"
    },
    "storageAccountName": {
      "type": "string"
    }
  },
  "resources": [],
  "outputs": {
    "ExistingStorage": {
      "type": "object",
      "value": "[reference(resourceId(parameters('storageResourceGroup'), 'Microsoft.Storage/storageAccounts', parameters('storageAccountName')), '2021-04-01')]"
    }
  }
}

Output nilai default dari contoh sebelumnya adalah:

Nama Tipe Nilai
base64Output String b25lLCB0d28sIHRocmVl
toStringOutput String Satu dua tiga
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 yang digabungkan:

{
  "$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 nilai default dari contoh sebelumnya adalah:

Nama Tipe 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 nilai default dari contoh sebelumnya adalah:

Nama Tipe 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 string berisi substring. Perbandingan untai (karakter) peka terhadap huruf besar/kecil. Namun, ketika pengujian, jika objek berisi kunci, perbandingannya tidak peka huruf besar/kecil.

Di Bicep, gunakan contains fungsi .

Parameter

Parameter Wajib Tipe Deskripsi
container 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 contains 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 nilai default dari contoh sebelumnya adalah:

Nama Tipe 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.

Di Bicep, gunakan dataUri fungsi .

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 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 nilai default dari contoh sebelumnya adalah:

Nama Tipe Nilai
dataUriOutput String data:text/plain;charset=utf8;base64,SGVsbG8=
toStringOutput String Halo dunia!

dataUriToString

dataUriToString(dataUriToConvert)

Mengonversi nilai berformat URI data menjadi string.

Di Bicep, gunakan dataUriToString fungsi .

Parameter

Parameter Wajib Tipe Deskripsi
dataUriToConvert Ya string Nilai URI data untuk dikonversi.

Nilai hasil

String yang berisi nilai yang dikonversi.

Contoh

Contoh templat berikut mengonversi nilai menjadi URI data dan 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 nilai default dari contoh sebelumnya adalah:

Nama Tipe Nilai
dataUriOutput String data:text/plain;charset=utf8;base64,SGVsbG8=
toStringOutput String Halo dunia!

kosong

empty(itemToTest)

Menentukan apakah array, objek, atau untai (karakter) kosong.

Di Bicep, gunakan empty fungsi .

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 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 nilai default dari contoh sebelumnya adalah:

Nama Tipe Nilai
arrayEmpty Bool Benar
objectEmpty Bool Benar
stringEmpty Bool Benar

endsWith

endsWith(stringToSearch, stringToFind)

Menentukan apakah string berakhir dengan nilai. Perbandingannya adalah tidak peka huruf besar/kecil.

Di Bicep, gunakan endsWith fungsi .

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 nilai default dari contoh sebelumnya adalah:

Nama Tipe 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 first fungsi .

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 first fungsi 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 nilai default dari contoh sebelumnya adalah:

Nama Tipe Nilai
arrayOutput String satu
stringOutput String O

format

format(formatString, arg1, arg2, ...)

Membuat string yang diformat dari nilai input.

Di Bicep, gunakan format fungsi .

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 menunjukkan cara menggunakan format fungsi :

{
  "$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 nilai default dari contoh sebelumnya adalah:

Nama Tipe Nilai
formatTest String Halo, Pengguna. Angka yang diformat: 8.175.133

guid

guid(baseString, ...)

Membuat nilai dalam format pengidentifikasi unik global berdasarkan nilai yang disediakan sebagai parameter.

Di Bicep, gunakan guid fungsi .

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 namanya unik hingga 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 tersebut, gunakan fungsi .newGuid

Contoh berikut menunjukkan 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. guid() Dalam implementasi fungsi, namespaceId diatur ke 11fb06fb-712d-4ddd-98c7-e71bbd588830, dan version diatur ke 5. Nilai dihasilkan dengan mengonversi setiap parameter guid() fungsi menjadi string dan menggabungkannya dengan - sebagai pemisah.

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.

Di Bicep, gunakan indexOf fungsi .

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 nilai default dari contoh sebelumnya adalah:

Nama Tipe Nilai
firstT Int 0
lastT Int 3
firstString Int 2
lastString Int 0
notFound Int -1

gabung

join(inputArray, delimiter)

Menggabungkan array string menjadi satu string, dipisahkan menggunakan pemisah.

Di Bicep, gunakan join fungsi .

Parameter

Parameter Wajib Tipe Deskripsi
inputArray Ya array string Array string untuk bergabung.
pemisah Ya Pemisah yang digunakan untuk memisahkan string.

Nilai hasil

String .

Contoh

Contoh berikut menggabungkan array string input ke dalam string yang dibatasi oleh 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 Tipe 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 json fungsi.

Di Bicep, gunakan json fungsi .

terakhir

last(arg1)

Mengembalikan karakter terakhir dari string, atau elemen terakhir dari array.

Di Bicep, gunakan last fungsi .

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 last fungsi 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 nilai default dari contoh sebelumnya adalah:

Nama Tipe 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.

Di Bicep, gunakan lastIndexOf fungsi .

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 nilai default dari contoh sebelumnya adalah:

Nama Tipe 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 length fungsi .

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 length fungsi 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 nilai default dari contoh sebelumnya adalah:

Nama Tipe 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.

Di Bicep, gunakan newGuid fungsi .

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 guid fungsi 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 menyebarkan ulang penyebaran yang berhasil sebelumnya di mana penyebaran sebelumnya menyertakan parameter yang menggunakan newGuid, parameter tidak dievaluasi lagi. Sebagai gantinya, penyebaran putar kembali secara otomatis menggunakan kembali nilai parameter dari penyebaran sebelumnya.

Dalam lingkungan pengujian, Anda mungkin perlu berulang kali menyebarkan sumber daya yang hanya hidup untuk waktu yang singkat. Daripada membuat nama unik, Anda dapat menggunakan newGuid dengan uniqueString untuk membuat nama unik.

Hati-hati menyebarkan ulang templat yang bergantung pada newGuid fungsi 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 menunjukkan 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 Tipe 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 disebarkan lagi:

{
  "$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')]"
    }
  }
}

Keluaran dari contoh sebelumnya bervariasi untuk setiap penyebaran tetapi akan mirip dengan:

Nama Tipe Nilai
nameOutput string storagenziwvyru7uxie

padLeft

padLeft(valueToPad, totalLength, paddingCharacter)

Mengembalikan string rata kanan dengan menambahkan karakter ke kiri hingga mencapai total panjang yang ditentukan.

Di Bicep, gunakan padLeft fungsi .

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 menunjukkan cara menambahkan karakter nol hingga mencapai jumlah total karakter untuk mengalihkan nilai parameter yang disediakan pengguna:

{
  "$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 nilai default dari contoh sebelumnya adalah:

Nama Tipe Nilai
stringOutput String 0000000123

ganti

replace(originalString, oldString, newString)

Mengembalikan string baru dengan semua contoh dari satu string yang digantikan oleh string lain.

Di Bicep, gunakan replace fungsi .

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 menunjukkan cara menghapus semua tanda hubung dari string yang disediakan pengguna dan cara mengganti bagian string dengan yang 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 nilai default dari contoh sebelumnya adalah:

Nama Tipe Nilai
firstOutput String 1231231234
secondOutput String 123-123-xxxx

lompati

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 skip fungsi .

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 melewati 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 nilai default dari contoh sebelumnya adalah:

Nama Tipe 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.

Di Bicep, gunakan split fungsi .

Parameter

Parameter Wajib Tipe Deskripsi
inputString Ya string String untuk dipisahkan.
pemisah Ya string atau array string Pemisah yang digunakan untuk memisahkan string.

Nilai hasil

Array string.

Contoh

Contoh berikut membagi string input dengan koma dan string berikut 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 nilai default dari contoh sebelumnya adalah:

Nama Tipe Nilai
firstOutput Array ["one", "two", "three"]
secondOutput Array ["one", "two", "three"]

startsWith

startsWith(stringToSearch, stringToFind)

Menentukan apakah string dimulai dengan nilai. Perbandingannya adalah tidak peka huruf besar/kecil.

Di Bicep, gunakan startsWith fungsi .

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 nilai default dari contoh sebelumnya adalah:

Nama Tipe 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.

Di Bicep, gunakan string fungsi .

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 memperlihatkan cara mengonversi jenis nilai yang berbeda menjadi untai (karakter):

{
  "$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 nilai default dari contoh sebelumnya adalah:

Nama Tipe Nilai
objectOutput String {"valueA":10,"valueB":"Contoh Teks"}
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.

Di Bicep, gunakan substring fungsi .

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 nilai default dari contoh sebelumnya adalah:

Nama Tipe 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 take fungsi .

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 nilai default dari contoh sebelumnya adalah:

Nama Tipe Nilai
arrayOutput Array ["satu", "dua"]
stringOutput String aktif

toLower

toLower(stringToChange)

Mengonversi string yang ditentukan menjadi huruf kecil.

Di Bicep, gunakan toLower fungsi .

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 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 nilai default dari contoh sebelumnya adalah:

Nama Tipe Nilai
toLowerOutput String Satu dua tiga
toLowerOutput String SATU DUA TIGA

toUpper

toUpper(stringToChange)

Mengonversi string yang ditentukan menjadi huruf besar.

Di Bicep, gunakan toUpper fungsi .

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 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 nilai default dari contoh sebelumnya adalah:

Nama Tipe Nilai
toLowerOutput String Satu dua tiga
toLowerOutput String SATU DUA TIGA

pangkas

trim(stringToTrim)

Menghapus semua karakter spasi putih berikutnya dan jarak antar baris dari string yang ditentukan.

Di Bicep, gunakan trim fungsi .

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 nilai default dari contoh sebelumnya adalah:

Nama Tipe Nilai
return String Satu dua tiga

uniqueString

uniqueString(baseString, ...)

Membuat string hash deterministik berdasarkan nilai yang disediakan sebagai parameter.

Di Bicep, gunakan uniqueString fungsi .

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 namanya unik hingga langganan, grup sumber daya, atau penyebaran.

Nilai yang dikembalikan bukan string acak melainkan hasil fungsi hash. Nilai yang dikembalikan memiliki panjang 13 karakter. Ini tidak unik secara global. Anda mungkin ingin menggabungkan nilai dengan awalan 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, nama tidak unik jika dibuat dengan cara yang sama:

"resources": [{
  "name": "[concat('storage', uniqueString(resourceGroup().id))]",
  "type": "Microsoft.Storage/storageAccounts",
  ...

Jika Anda perlu membuat nama unik baru setiap kali Anda menyebarkan templat, dan tidak berniat memperbarui sumber daya, Anda dapat menggunakan utcNow fungsi 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.

Di Bicep, gunakan uri fungsi .

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 hanya baseUri diikuti oleh relativeUri. Jika relativeUri 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) hasilnya baseUri diikuti oleh relativeUri.

    • Jika baseUri memiliki beberapa garis miring, tetapi tidak berakhir dengan garis miring, semuanya dari garis miring terakhir dan selanjutnya dihapus dan baseUri hasilnya baseUri diikuti oleh relativeUri.

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 lengkap, 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 menunjukkan cara membuat tautan ke templat berlapis berdasarkan nilai templat induk:

"templateLink": "[uri(deployment().properties.templateLink.uri, 'nested/azuredeploy.json')]"

Contoh templat berikut menunjukkan cara menggunakan uri, , uriComponentdan 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 nilai default dari contoh sebelumnya adalah:

Nama Tipe 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.

Di Bicep, gunakan uriComponent fungsi .

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 menggunakan uri, , uriComponentdan 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 nilai default dari contoh sebelumnya adalah:

Nama Tipe 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.

Di Bicep, gunakan uriComponentToString fungsi .

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, , uriComponentdan 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 nilai default dari contoh sebelumnya adalah:

Nama Tipe 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