Funkcja Replace i Substitute

Dotyczy: Aplikacje oparte na kanwie Kolumny frmuł Dataverse Przepływy pulpitu Aplikacje oparte na modelach Power Platform CLI

Zamieniają fragment ciągu tekstowego na inny ciąg.

Popis

Funkcja Replace określa tekst, który ma zostać zamieniony, za pomocą pozycji początkowej i długości.

Funkcja Substitute określa tekst, który ma zostać zamieniony, przez dopasowanie ciągu. W przypadku znalezienia więcej niż jednego dopasowania można wymienić wszystkie te lub określić jedno do zastąpienia.

W przypadku przekazania pojedynczego ciągu wartość zwracana będzie zmodyfikowaną wersją tego ciągu. Jeśli przekażesz tabelę z jedną kolumną zawierającą ciągi, zwrócona wartość będzie tabelą z jedną kolumną z kolumną Wartość zawierającą zmodyfikowane ciągi. Tabelę wielokolumnową można przekształcić w tabelę jednokolumnową, postępując zgodnie z opisem z sekcji praca z tabelami.

Składnia

Replace( Ciąg, PozycjaPoczątkowa, LiczbaZnaków, NowyCiąg )

  • Ciąg - wymagane. Ciąg, na którym będzie wykonywana operacja.
  • StartingPosition – wymagane. Pozycja znaku, od którego należy zacząć zamianę. Pierwszym znakiem zmiennej Ciąg jest pozycja 1.
  • NumberOfCharacters – wymagane. Liczba znaków, które mają zostać zamienione w zmiennej Ciąg.
  • NewString – wymagane. Ciąg zastępujący. Liczba znaków w tym argumencie może być inna od podanej w argumencie LiczbaZnaków.

Substitute( Ciąg, StaryCiąg, NowyCiąg [, NumerWystąpienia ] )

  • Ciąg - wymagane. Ciąg, na którym będzie wykonywana operacja.
  • OldString – wymagane. Ciąg zamieniany.
  • NewString – wymagane. Ciąg zastępujący. Ciągi OldString i NewString mogą mieć różne długości.
  • InstanceNumber – opcjonalne. Użyj tego argumentu w celu określenia, które wystąpienie StaryCiąg ma zostać zastąpione, jeśli ciąg zawiera więcej niż jedno wystąpienie. Jeśli nie określisz tego argumentu, wszystkie wystąpienia zostaną zamienione.

Replace( JednokolumnowaTabela, PozycjaPoczątkowa, LiczbaZnaków, NowyCiąg )

  • SingleColumnTable – wymagane. Tabela z jedną kolumną zawierającą ciągi, na których będą wykonywane operacje.
  • StartingPosition – wymagane. Pozycja znaku, od którego należy zacząć zamianę. Pierwszym znakiem każdego ciągu w tabeli jest pozycja 1.
  • NumberOfCharacters – wymagane. Liczba znaków, które mają zostać zamienione w każdym ciągu.
  • NewString – wymagane. Ciąg zastępujący. Liczba znaków w tym argumencie może być inna od podanej w argumencie LiczbaZnaków.

Substitute( JednokolumnowaTabela, StaryCiąg, NowyCiąg [, NumerWystąpienia ] )

  • SingleColumnTable – wymagane. Tabela z jedną kolumną zawierającą ciągi, na których będą wykonywane operacje.
  • OldString – wymagane. Ciąg zamieniany.
  • NewString – wymagane. Ciąg zastępujący. Ciągi OldString i NewString mogą mieć różne długości.
  • InstanceNumber – opcjonalne. Użyj tego argumentu w celu określenia, które wystąpienie StaryCiąg ma zostać zastąpione, jeśli ciąg zawiera więcej niż jedno wystąpienie. Jeśli nie określisz tego argumentu, wszystkie wystąpienia zostaną zamienione.

Przykłady

Wzór Opis Wynik
Replace( "abcdefghijk", 6, 5, "*" ) Zastępuje pięć znaków w postaci "abcdefghijk" jednym znakiem "*", zaczynając od szóstego znaku ("f"). "abcde*k"
Replace( "2019", 3, 2, "20" ) Zastępuje dwa ostatnie znaki "2019" znakiem "20". "2020"
Replace( "123456", 1, 3, "_" ) Zastępuje pierwsze trzy znaki litery "123456" jednym znakiem "_". "_456"
Substitute( "Sales Data", "Sales", "Cost" ) Zastępuje ciąg "Cost" ciągiem "Sales". "Dane kosztów"
Substitute( "Quarter 1, 2018", "1", "2", 1 ) Podstawia zamiast pierwszej instancji "1" z "2", ponieważ czwarty argument (InstanceNumber) ma wartość 1. "Quarter 2, 2018"
Substitute( "Quarter 1, 2011", "1", "2", 3 ) Podstawia zamiast trzeciej instancji "1" z "2", ponieważ czwarty argument (InstanceNumber) ma wartość 3. "Quarter 1, 2012"
Substitute( "Quarter 1, 2011", "1", "2" ) Podstawia wszystie wystapienia "1" na "2", ponieważ czwarty argument (InstanceNumber) nie ma podanej wartości. "Quarter 2, 2022"
Replace(
[ "Quarter 1, 2018",
"Quarter 2, 2011",
"Quarter 4, 2019" ],
9, 1, "3" )
Zastępuje dziewiąty znak w każdym rekordzie tabeli jednokolumnowej parametrem "3". Tabela jednowierszowa z kolumną Value zawierającą następujące wartości: [ „Quarter 3, 2018”,
"Quarter 3, 2011",
"Quarter 3, 2019" ]
Substitute(
[ "Qtr 1, 2018",
"Quarter 1, 2011",
"Q1, 2019" ],
"1", "3", 1 )
Z uwagi na fakt, że czwarty argument (InstanceNumber) ma wartość 1, w każdym rekordzie tabeli jednokolumnowej zastąpiona jest tylko pierwsza instancja "1", wartością "3". Tabela jednowierszowa z kolumną Value zawierającą następujące wartości: [ „Qtr 3, 2018”,
"Quarter 3, 2011",
"Q3,2019"]
Substitute(
[ "Qtr 1, 2018",
"Quarter 1, 2011",
"Q1, 2019" ],
"1", "3" )
Z uwagi na fakt, że czwarty argument (InstanceNumber) nie ma podanej wartości, wszystkie wystąpienia "1" w każdym rekordzie tabelki jednokolumnowej są zastąpione wartością "3". Tabela jednowierszowa z kolumną Value zawierającą następujące wartości: [ „Qtr 3, 2038”,
"Quarter 3, 2033",
"Q3,2039"]