Azure ARM:删除无效字符
Azure ARM: Remove invalid characters
我正在寻找一种简单的方法来替换字符串中的所有非字母数字字符(只是试图防止用户为资源输入无效字符)。
我的工作代码如下,但我认为它非常混乱,因为我必须为每个要删除的字符创建一个新变量。
{
"parameters": {
"userString": {
"type": "string"
}
},
"variables": {
"removeChar1": "[replace(parameters('userString'), '-', '')]",
"removeChar2": "[replace(variables('removeChar1'), ' ', '')]",
"removeChar3": "[replace(variables('removeChar2'), '^', '')]",
"cleanString": "[replace(variables('removeChar3'), ')', '')]"
},
"resources": [
],
"outputs": {
"cleanStringOutput": {
"type": "string",
"value": "[variables('cleanString')]"
}
}
}
有更好的方法吗?
谢谢!
不,替换功能只进行精确搜索,所以这是唯一的方法。 "alternatives" 包括:在您的模板中创建一个函数来执行此操作,但您可以调用您的函数(看起来更清晰 + 可重用),创建一个 azure 函数并调用该函数,该函数的输出将是带有替换所有字符的输出字符串的 arm 模板。
我正在寻找一种简单的方法来替换字符串中的所有非字母数字字符(只是试图防止用户为资源输入无效字符)。
我的工作代码如下,但我认为它非常混乱,因为我必须为每个要删除的字符创建一个新变量。
{
"parameters": {
"userString": {
"type": "string"
}
},
"variables": {
"removeChar1": "[replace(parameters('userString'), '-', '')]",
"removeChar2": "[replace(variables('removeChar1'), ' ', '')]",
"removeChar3": "[replace(variables('removeChar2'), '^', '')]",
"cleanString": "[replace(variables('removeChar3'), ')', '')]"
},
"resources": [
],
"outputs": {
"cleanStringOutput": {
"type": "string",
"value": "[variables('cleanString')]"
}
}
}
有更好的方法吗?
谢谢!
不,替换功能只进行精确搜索,所以这是唯一的方法。 "alternatives" 包括:在您的模板中创建一个函数来执行此操作,但您可以调用您的函数(看起来更清晰 + 可重用),创建一个 azure 函数并调用该函数,该函数的输出将是带有替换所有字符的输出字符串的 arm 模板。