Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Синтаксис
Table.ReplaceValue(
table as table,
oldValue as any,
newValue as any,
replacer as function,
columnsToSearch as list
) as table
О программе
Заменяет значение новым значением в указанных столбцах таблицы.
-
table: таблица для поиска. -
oldValue: значение, которое необходимо заменить. -
newValue: значение для замены. -
replacer: Функция замены, которую нужно использовать. Функция может быть Replacer.ReplaceText для замены исходного текста новым текстом, Replacer.ReplaceValue для замены исходного значения новым значением, или использовать пользовательский заменитель. -
columnsToSearch: список, содержащий определенный столбец или столбцы в таблице для поиска значения для замены.
Пример 1
Замените текст "goodbye" на "world" в столбце B, совпадая только со всем значением.
Использование
Table.ReplaceValue(
Table.FromRecords({
[A = 1, B = "hello"],
[A = 2, B = "goodbye"],
[A = 3, B = "goodbyes"]
}),
"goodbye",
"world",
Replacer.ReplaceValue,
{"B"}
)
Выходные данные
Table.FromRecords({
[A = 1, B = "hello"],
[A = 2, B = "world"],
[A = 3, B = "goodbyes"]
})
Пример 2
Замените текст "ur" на "or" в столбце B, совпадающий с любой частью значения.
Использование
Table.ReplaceValue(
Table.FromRecords({
[A = 1, B = "hello"],
[A = 2, B = "wurld"]
}),
"ur",
"or",
Replacer.ReplaceText,
{"B"}
)
Выходные данные
Table.FromRecords({
[A = 1, B = "hello"],
[A = 2, B = "world"]
})
Пример 3
Анонимизируйте имена сотрудников США.
Использование
Table.ReplaceValue(
Table.FromRecords({
[Name = "Cindy", Country = "US"],
[Name = "Bob", Country = "CA"]
}),
each if [Country] = "US" then [Name] else false,
each Text.Repeat("*", Text.Length([Name])),
Replacer.ReplaceValue,
{"Name"}
)
Выходные данные
Table.FromRecords({
[Name = "*****", Country = "US"],
[Name = "Bob", Country = "CA"]
})
Пример 4
Анонимизируйте все столбцы сотрудников США.
Использование
Table.ReplaceValue(
Table.FromRecords({
[Name = "Cindy", Country = "US"],
[Name = "Bob", Country = "CA"]
}),
each [Country] = "US",
"?",
(currentValue, isUS, replacementValue) =>
if isUS then
Text.Repeat(replacementValue, Text.Length(currentValue))
else
currentValue,
{"Name", "Country"}
)
Выходные данные
Table.FromRecords({
[Name = "?????", Country = "??"],
[Name = "Bob", Country = "CA"]
})