Fungsi untai (karakter) untuk Bicep

Azure Resource Manager menyediakan fungsi berikut untuk bekerja dengan untai (karakter) di file Bicep Anda:

base64

base64(inputString)

Mengembalikan representasi base64 dari string input.

Parameter

Parameter Diperlukan Jenis Deskripsi
inputString Ya string Nilai yang dikembalikan sebagai representasi base64.

Mengembalikan nilai

String yang berisi representasi base64.

Contoh

Contoh berikut menunjukkan cara menggunakan fungsi base64.

param stringData string = 'one, two, three'
param jsonFormattedData string = '{\'one\': \'a\', \'two\': \'b\'}'

var base64String = base64(stringData)
var base64Object = base64(jsonFormattedData)

output base64Output string = base64String
output toStringOutput string = base64ToString(base64String)
output toJsonOutput object = base64ToJson(base64Object)

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
base64Output String b25lLCB0d28sIHRocmVl
toStringOutput String one, two, three
toJsonOutput Object {"one": "a", "two": "b"}

base64ToJson

base64tojson

Mengonversi representasi base64 menjadi objek JSON.

Parameter

Parameter Diperlukan Jenis Deskripsi
base64Value Ya string Representasi base64 untuk dikonversi ke objek JSON.

Mengembalikan nilai

Sebuah objek JSON.

Contoh

Contoh berikut menggunakan fungsi base64ToJson untuk mengonversi nilai base64:

param stringData string = 'one, two, three'
param jsonFormattedData string = '{\'one\': \'a\', \'two\': \'b\'}'

var base64String = base64(stringData)
var base64Object = base64(jsonFormattedData)

output base64Output string = base64String
output toStringOutput string = base64ToString(base64String)
output toJsonOutput object = base64ToJson(base64Object)

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
base64Output String b25lLCB0d28sIHRocmVl
toStringOutput String one, two, three
toJsonOutput Object {"one": "a", "two": "b"}

base64ToString

base64ToString(base64Value)

Mengonversi representasi base64 menjadi string.

Parameter

Parameter Diperlukan Jenis Deskripsi
base64Value Ya string Representasi base64 untuk dikonversi ke string.

Mengembalikan nilai

String dari nilai base64 yang dikonversi.

Contoh

Contoh berikut menggunakan fungsi base64ToString untuk mengonversi nilai base64:

param stringData string = 'one, two, three'
param jsonFormattedData string = '{\'one\': \'a\', \'two\': \'b\'}'

var base64String = base64(stringData)
var base64Object = base64(jsonFormattedData)

output base64Output string = base64String
output toStringOutput string = base64ToString(base64String)
output toJsonOutput object = base64ToJson(base64Object)

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
base64Output String b25lLCB0d28sIHRocmVl
toStringOutput String one, two, three
toJsonOutput Object {"one": "a", "two": "b"}

concat

Alih-alih menggunakan fungsi kontak, gunakan interpolasi untai (karakter).

param prefix string = 'prefix'

output concatOutput string = '${prefix}And${uniqueString(resourceGroup().id)}'

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
concatOutput String prefixAnd5yj4yjf5mbg72

berisi

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.

Parameter

Parameter Diperlukan Jenis Deskripsi
kontainer Ya array, objek, atau string Nilai yang berisi nilai untuk ditemukan.
itemToFind Ya string atau int Nilai untuk ditemukan.

Nilai kembali

Benar jika item ditemukan; jika tidak, Salah.

Contoh

Contoh berikut menunjukkan cara menggunakan berisi dengan jenis yang berbeda:

param stringToTest string = 'OneTwoThree'
param objectToTest object = {
  'one': 'a'
  'two': 'b'
  'three': 'c'
}
param arrayToTest array = [
  'one'
  'two'
  'three'
]

output stringTrue bool = contains(stringToTest, 'e')
output stringFalse bool = contains(stringToTest, 'z')
output objectTrue bool = contains(objectToTest, 'one')
output objectFalse bool = contains(objectToTest, 'a')
output arrayTrue bool = contains(arrayToTest, 'three')
output arrayFalse bool = contains(arrayToTest, 'four')

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
stringTrue Bool True
stringFalse Bool FALSE
objectTrue Bool True
objectFalse Bool FALSE
arrayTrue Bool True
arrayFalse Bool False

dataUri

dataUri(stringToConvert)

Mengonversi nilai menjadi URI data.

Parameter

Parameter Diperlukan Jenis Deskripsi
stringToConvert Ya string Nilai untuk dikonversi menjadi URI data.

Mengembalikan nilai

String yang diformat sebagai URI data.

Contoh

Contoh berikut mengonversi nilai menjadi data URI, dan mengonversi data URI menjadi untai (karakter):

param stringToTest string = 'Hello'
param dataFormattedString string = 'data:;base64,SGVsbG8sIFdvcmxkIQ=='

output dataUriOutput string = dataUri(stringToTest)
output toStringOutput string = dataUriToString(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.

Parameter

Parameter Diperlukan Jenis Deskripsi
dataUriToConvert Ya string Nilai URI data untuk dikonversi.

Mengembalikan nilai

String yang berisi nilai yang dikonversi.

Contoh

Contoh berikut mengonversi nilai menjadi data URI, dan mengonversi data URI menjadi untai (karakter):

param stringToTest string = 'Hello'
param dataFormattedString string = 'data:;base64,SGVsbG8sIFdvcmxkIQ=='

output dataUriOutput string = dataUri(stringToTest)
output toStringOutput string = dataUriToString(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!

empty

empty(itemToTest)

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

Parameter

Parameter Diperlukan Jenis Deskripsi
itemToTest Ya array, objek, atau string Nilai untuk memeriksa apakah nilainya kosong.

Mengembalikan nilai

Kembalikan Benar jika nilainya kosong; jika tidak, Salah.

Contoh

Contoh berikut ini memeriksa apakah array, objek, dan string kosong.

param testArray array = []
param testObject object = {}
param testString string = ''

output arrayEmpty bool = empty(testArray)
output objectEmpty bool = empty(testObject)
output stringEmpty bool = empty(testString)

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
arrayEmpty Bool True
objectEmpty Bool True
stringEmpty Bool True

endsWith

endsWith(stringToSearch, stringToFind)

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

Parameter

Parameter Diperlukan Jenis Deskripsi
stringToSearch Ya string Nilai yang berisi nilai untuk ditemukan.
stringToFind Ya string Nilai untuk ditemukan.

Mengembalikan nilai

Benar jika karakter terakhir atau karakter string cocok dengan nilai; jika tidak, Salah.

Contoh

Contoh berikut memperlihatkan cara menggunakan fungsi startsWith dan endsWith:

output startsTrue bool = startsWith('abcdef', 'ab')
output startsCapTrue bool = startsWith('abcdef', 'A')
output startsFalse bool = startsWith('abcdef', 'e')
output endsTrue bool = endsWith('abcdef', 'ef')
output endsCapTrue bool = endsWith('abcdef', 'F')
output endsFalse bool = endsWith('abcdef', 'e')

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
startsTrue Bool True
startsCapTrue Bool True
startsFalse Bool False
endsTrue Bool True
endsCapTrue Bool True
endsFalse Bool False

first

first(arg1)

Mengembalikan karakter pertama dari string, atau elemen pertama array.

Parameter

Parameter Diperlukan Jenis Deskripsi
arg1 Ya array atau string Nilai untuk mengambil elemen atau karakter pertama.

Mengembalikan nilai

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.

param arrayToTest array = [
  'one'
  'two'
  'three'
]

output arrayOutput string = first(arrayToTest)
output stringOutput string = 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.

Parameter

Parameter Diperlukan Jenis Deskripsi
formatString Ya string String format komposit.
arg1 Ya string, bilangan bulat, atau boolean Nilai yang akan disertakan dalam string yang diformat.
argumen tambahan Tidak string, bilangan bulat, atau boolean Nilai yang akan disertakan dalam string yang diformat.

Keterangan

Gunakan fungsi ini untuk memformat untai (karakter) di file Bicep Anda. Ini menggunakan opsi pemformatan yang sama dengan metode System.String.Format di .NET.

Contoh

Contoh berikut memperlihatkan cara menggunakan fungsi format.

param greeting string = 'Hello'
param name string = 'User'
param numberToFormat int = 8175133

output formatTest string = format('{0}, {1}. Formatted number: {2:N0}', greeting, name, 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.

Parameter

Parameter Diperlukan Jenis Deskripsi
baseString Ya string Nilai yang digunakan dalam fungsi hash untuk membuat GUID.
parameter tambahan sesuai kebutuhan Tidak 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)

Mengembalikan nilai

String yang berisi 36 karakter dalam format pengidentifikasi unik global.

Contoh

Contoh berikut mengembalikan hasil dari guid:

output guidPerSubscription string = guid(subscription().subscriptionId)
output guidPerResourceGroup string = guid(resourceGroup().id)
output guidPerDeployment string = guid(resourceGroup().id, deployment().name)

indexOf

indexOf(stringToSearch, stringToFind)

Mengembalikan posisi pertama dari nilai dalam string. Perbandingannya adalah tidak peka huruf besar/kecil.

Parameter

Parameter Diperlukan Jenis Deskripsi
stringToSearch Ya string Nilai yang berisi nilai untuk ditemukan.
stringToFind Ya string Nilai untuk ditemukan.

Mengembalikan nilai

Bilangan bulat yang mewakili posisi item untuk ditemukan. Nilainya berbasis nol. Jika item tidak ditemukan, -1 dikembalikan.

Contoh

Contoh berikut memperlihatkan cara menggunakan fungsi indexOf dan lastIndexOf:

output firstT int = indexOf('test', 't')
output lastT int = lastIndexOf('test', 't')
output firstString int = indexOf('abcdef', 'CD')
output lastString int = lastIndexOf('abcdef', 'AB')
output notFound int = 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

json

json(arg1)

Mengonversi string JSON yang valid menjadi jenis data JSON. Untuk informasi selengkapnya, lihat fungsi json.

last

last (arg1)

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

Parameter

Parameter Diperlukan Jenis Deskripsi
arg1 Ya array atau string Nilai untuk mengambil elemen atau karakter terakhir.

Mengembalikan nilai

String karakter terakhir, atau jenis (string, int, array, atau objek) dari elemen pertama dalam array.

Contoh

Contoh berikut menunjukkan cara menggunakan fungsi terakhir dengan array dan string.

param arrayToTest array = [
  'one'
  'two'
  'three'
]

output arrayOutput string = last(arrayToTest)
output stringOutput string = 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.

Parameter

Parameter Diperlukan Jenis Deskripsi
stringToSearch Ya string Nilai yang berisi nilai untuk ditemukan.
stringToFind Ya string Nilai untuk ditemukan.

Mengembalikan nilai

Bilangan bulat yang mewakili posisi item untuk ditemukan. Nilainya berbasis nol. Jika item tidak ditemukan, -1 dikembalikan.

Contoh

Contoh berikut memperlihatkan cara menggunakan fungsi indexOf dan lastIndexOf:

output firstT int = indexOf('test', 't')
output lastT int = lastIndexOf('test', 't')
output firstString int = indexOf('abcdef', 'CD')
output lastString int = lastIndexOf('abcdef', 'AB')
output notFound int = 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.

Parameter

Parameter Diperlukan Jenis 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 kembali

Int.

Contoh

Contoh berikut memperlihatkan cara menggunakan panjang dengan array dan string:

param arrayToTest array = [
  'one'
  'two'
  'three'
]
param stringToTest string = 'One Two Three'
param objectToTest object = {
  'propA': 'one'
  'propB': 'two'
  'propC': 'three'
  'propD': {
    'propD-1': 'sub'
    'propD-2': 'sub'
  }
}

output arrayLength int = length(arrayToTest)
output stringLength int = length(stringToTest)
output objectLength int = length(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.

Keterangan

Anda hanya dapat menggunakan fungsi ini dalam ekspresi untuk nilai default parameter. Menggunakan fungsi ini di tempat lain dalam file Bicep mengembalikan kesalahan. Fungsi ini tidak diizinkan di bagian lain file Bicep karena mengembalikan nilai yang berbeda setiap kali disebut. Menyebarkan file Bicep yang sama dengan parameter yang sama tidak akan menghasilkan hasil yang sama secara andal.

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 file Bicep 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 sumber daya baru, berikan nilai parameter dari penyebaran sebelumnya.

Mengembalikan nilai

String yang berisi 36 karakter dalam format pengidentifikasi unik global.

Contoh

Contoh berikut memperlihatkan parameter dengan pengidentifikasi baru.

param guidValue string = newGuid()

output guidOutput string = guidValue

Output 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. File Bicep ini mungkin berfungsi untuk lingkungan pengujian tempat akun penyimpanan berada untuk waktu yang singkat dan tidak disebar ulang.

param guidValue string = newGuid()

var storageName = 'storage${uniqueString(guidValue)}'

resource myStorage 'Microsoft.Storage/storageAccounts@2018-07-01' = {
  name: storageName
  location: 'West US'
  sku: {
    name: 'Standard_LRS'
  }
  kind: 'StorageV2'
  properties: {}
}

output nameOutput string = storageName

Output 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.

Parameter

Parameter Diperlukan Jenis Deskripsi
valueToPad Ya string atau int Nilai untuk rata kanan.
totalLength Ya int Jumlah total karakter dalam string yang dikembalikan.
paddingCharacter Tidak 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.

Mengembalikan nilai

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.

param testString string = '123'

output stringOutput string = padLeft(testString, 10, '0')

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
stringOutput String 0000000123

replace

replace(originalString, oldString, newString)

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

Parameter

Parameter Diperlukan Jenis 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.

Mengembalikan nilai

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.

param testString string = '123-123-1234'

output firstOutput string = replace(testString, '-', '')
output secondOutput string = replace(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.

Parameter

Parameter Diperlukan Jenis 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.

Mengembalikan nilai

Array atau string.

Contoh

Contoh berikut melompati jumlah elemen yang ditentukan dalam array, dan jumlah karakter yang ditentukan dalam string.

param testArray array = [
  'one'
  'two'
  'three'
]
param elementsToSkip int = 2
param testString string = 'one two three'
param charactersToSkip int = 4

output arrayOutput array = skip(testArray, elementsToSkip)
output stringOutput string = skip(testString, charactersToSkip)

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
arrayOutput Array ["three"]
stringOutput String two three

split

split(inputString, delimiter)

Mengembalikan array string yang berisi substring dari string input yang dipisah oleh pemisah yang ditentukan.

Parameter

Parameter Diperlukan Jenis Deskripsi
inputString Ya string String untuk dipisahkan.
delimiter Ya string atau array string Pemisah yang digunakan untuk memisahkan string.

Mengembalikan nilai

Array string.

Contoh

Contoh berikut memisahkan untai (karakter) input dengan koma, dan dengan koma atau titik koma.

param firstString string = 'one,two,three'
param secondString string = 'one;two,three'

var delimiters = [
  ','
  ';'
]

output firstOutput array = split(firstString, ',')
output secondOutput array = split(secondString, 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.

Parameter

Parameter Diperlukan Jenis Deskripsi
stringToSearch Ya string Nilai yang berisi nilai untuk ditemukan.
stringToFind Ya string Nilai untuk ditemukan.

Mengembalikan nilai

Benar jika karakter pertama atau karakter string cocok dengan nilai; jika tidak, Salah.

Contoh

Contoh berikut memperlihatkan cara menggunakan fungsi startsWith dan endsWith:

output startsTrue bool = startsWith('abcdef', 'ab')
output startsCapTrue bool = startsWith('abcdef', 'A')
output startsFalse bool = startsWith('abcdef', 'e')
output endsTrue bool = endsWith('abcdef', 'ef')
output endsCapTrue bool = endsWith('abcdef', 'F')
output endsFalse bool = endsWith('abcdef', 'e')

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
startsTrue Bool True
startsCapTrue Bool True
startsFalse Bool False
endsTrue Bool True
endsCapTrue Bool True
endsFalse Bool False

string

string(valueToConvert)

Mengonversi nilai yang ditentukan menjadi string.

Parameter

Parameter Diperlukan Jenis Deskripsi
valueToConvert Ya Apa pun Nilai untuk dikonversi menjadi string. Jenis nilai apa pun dapat dikonversi, termasuk objek dan array.

Mengembalikan nilai

String dari nilai yang dikonversi.

Contoh

Contoh berikut memperlihatkan cara mengonversi jenis nilai yang berbeda menjadi untai (karakter):

param testObject object = {
  'valueA': 10
  'valueB': 'Example Text'
}
param testArray array = [
  'a'
  'b'
  'c'
]
param testInt int = 5

output objectOutput string = string(testObject)
output arrayOutput string = string(testArray)
output intOutput string = string(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.

Parameter

Parameter Diperlukan Jenis Deskripsi
stringToParse Ya string String asli dari substring yang diekstrak.
startIndex Tidak int Posisi karakter awal berbasis nol untuk substring.
length Tidak int Jumlah karakter untuk substring. Harus merujuk ke lokasi dalam string. Harus nol atau lebih besar.

Mengembalikan nilai

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'.".

param inputString string = '1234567890'

var prefix = substring(inputString, 0, 11)

Contoh

Contoh berikut mengekstrak substring dari parameter.

param testString string = 'one two three'
output substringOutput string = substring(testString, 4, 3)

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
substringOutput String two

take

take(originalValue, numberToTake)

Mengembalikan string dengan jumlah karakter yang ditentukan dari awal string, atau array dengan jumlah elemen yang ditentukan dari awal array.

Parameter

Parameter Diperlukan Jenis 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.

Mengembalikan nilai

Array atau string.

Contoh

Contoh berikut mengambil jumlah elemen yang ditentukan dari array, dan karakter dari string.

param testArray array = [
  'one'
  'two'
  'three'
]
param elementsToTake int = 2
param testString string = 'one two three'
param charactersToTake int = 2

output arrayOutput array = take(testArray, elementsToTake)
output stringOutput string = take(testString, 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.

Parameter

Parameter Diperlukan Jenis Deskripsi
stringToChange Ya string Nilai untuk dikonversi ke huruf kecil.

Mengembalikan nilai

String untuk dikonversi ke huruf kecil.

Contoh

Contoh berikut mengonversi nilai parameter menjadi huruf kecil dan menjadi huruf besar.

param testString string = 'One Two Three'

output toLowerOutput string = toLower(testString)
output toUpperOutput string = toUpper(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.

Parameter

Parameter Diperlukan Jenis Deskripsi
stringToChange Ya string Nilai untuk dikonversi ke huruf besar.

Mengembalikan nilai

String untuk dikonversi ke huruf besar.

Contoh

Contoh berikut mengonversi nilai parameter menjadi huruf kecil dan menjadi huruf besar.

param testString string = 'One Two Three'

output toLowerOutput string = toLower(testString)
output toUpperOutput string = toUpper(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.

Parameter

Parameter Diperlukan Jenis Deskripsi
stringToTrim Ya string Nilai untuk dipangkas.

Mengembalikan nilai

String tanpa karakter spasi putih berikutnya dan jarak antar baris.

Contoh

Contoh berikut memangkas karakter spasi putih dari parameter.

param testString string = '    one two three   '

output return string = trim(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.

Parameter

Parameter Diperlukan Jenis Deskripsi
baseString Ya string Nilai yang digunakan dalam fungsi hash untuk membuat string unik.
parameter tambahan sesuai kebutuhan Tidak 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 memperlihatkan 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.

resource mystorage 'Microsoft.Storage/storageAccounts@@2018-07-01' = {
  name: 'storage${uniqueString(resourceGroup().id)}'
  ...
}

Jika Anda perlu membuat nama unik baru setiap kali Anda menyebarkan file Bicep, dan tidak bermaksud memperbarui sumber daya, Anda dapat menggunakan fungsi utcNow dengan uniqueString. Anda dapat menggunakan pendekatan ini di lingkungan pengujian. Misalnya, lihat utcNow.

Mengembalikan nilai

String berisi 13 karakter.

Contoh

Contoh berikut mengembalikan hasil dari uniquestring:

output uniqueRG string = uniqueString(resourceGroup().id)
output uniqueDeploy string = uniqueString(resourceGroup().id, deployment().name)

uri

uri (baseUri, relativeUri)

Membuat URI absolut dengan menggabungkan baseUri dan string relativeUri.

Parameter

Parameter Diperlukan Jenis Deskripsi
baseUri Ya string String uri dasar. Berhati-hatilah untuk mengamati perilaku mengenai penanganan garis miring berikutnya ('/'), seperti yang dijelaskan mengikuti tabel ini.
relativeUri Ya string String uri relatif untuk ditambahkan ke string uri dasar.
  • Jika baseUri berakhir dengan garis miring di belakang, hasilnya hanya baseUri diikuti oleh relativeUri.

  • Jika baseUri tidak berakhir dengan garis miring di belakang salah satu dari dua hal yang terjadi.

    • Jika baseUri tidak memiliki garis miring sama sekali (selain dari "//" di dekat bagian depan) hasilnya hanya baseUri diikuti oleh relativeUri.

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

Berikut adalah beberapa contohnya:

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/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, parameter baseUri dan relativeUri diselesaikan seperti yang ditentukan dalam RFC 3986, bagian 5.

Mengembalikan nilai

String yang mewakili URI absolut untuk nilai dasar dan relatif.

Contoh

Contoh berikut memperlihatkan cara menggunakan uri, uriComponent, dan uriComponentToString:

var uriFormat = uri('http://contoso.com/resources/', 'nested/azuredeploy.json')
var uriEncoded = uriComponent(uriFormat)

output uriOutput string = uriFormat
output componentOutput string = uriEncoded
output toStringOutput string = uriComponentToString(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.

Parameter

Parameter Diperlukan Jenis Deskripsi
stringToEncode Ya string Nilai yang akan dikodekan.

Mengembalikan nilai

String nilai yang dikodekan URI.

Contoh

Contoh berikut memperlihatkan cara menggunakan uri, uriComponent, dan uriComponentToString:

var uriFormat = uri('http://contoso.com/resources/', 'nested/azuredeploy.json')
var uriEncoded = uriComponent(uriFormat)

output uriOutput string = uriFormat
output componentOutput string = uriEncoded
output toStringOutput string = uriComponentToString(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.

Parameter

Parameter Diperlukan Jenis Deskripsi
uriEncodedString Ya string Nilai yang dikodekan URI untuk dikonversi menjadi string.

Mengembalikan nilai

String yang dikodekan dari nilai yang dikodekan URI.

Contoh

Contoh berikut memperlihatkan cara menggunakan uri, uriComponent, dan uriComponentToString:

var uriFormat = uri('http://contoso.com/resources/', 'nested/azuredeploy.json')
var uriEncoded = uriComponent(uriFormat)

output uriOutput string = uriFormat
output componentOutput string = uriEncoded
output toStringOutput string = uriComponentToString(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