FindOneOf() söker en sträng för att hitta positionen för eventuella tecken som ingår i en uppsättning angivna tecken. Positionen för den N:e förekomsten av ett tecken från sökuppsättningen returneras, där N är den valfria tredje parametern för funktionen. Om ingen tredje parameter anges returneras den första förekomsten. Om ingen motsvarighet påträffas, returneras 0.
Syntax:
FindOneOf(text, char_set[, count])
Returnerad datatyp: heltal
Argument
Argument
Beskrivning
text
Den ursprungliga strängen.
char_set
En teckenuppsättning att söka efter i text.
count
Definierar vilka förekomster av något av tecknen som sökningen ska inkludera. Till exempel, söker värdet 2 efter den andra förekomsten.
Exempel: diagramuttryck
Exempel
Resultat
FindOneOf( 'my example text string', 'et%s' )
Returnerar 4 eftersom e är det fjärde tecknet i exempelsträngen.
FindOneOf( 'my example text string', 'et%s', 3 )
Returnerar 12 eftersom sökningen avser något av tecknen e, t, % eller s, och t är den tredje förekomsten i position 12 i exempelsträngen.
FindOneOf( 'my example text string', '¤%&' )
Returnerar 0 eftersom inget av tecknen ¤, % eller & förekommer i exempelsträngen.
Exempel – grunderna i FindOneOf
Översikt
Öppn skriptredigeraren och lägg till laddningsskriptet nedan till en ny flik.
Laddningsskriptet innehåller:
En datauppsättning som läses in i en datatabell som heter Example.
Ett fält i datatabellen som heter Phrase, som innehåller de ursprungliga textsträngarna som ska bearbetas.
Laddningsskript
Example:
Load *
Inline
[Phrase
Many tiny beads
For a very long time
Has the potential for growth
];
Resultat
Ladda data och öppna ett ark. Skapa en ny tabell och lägg till det här fältet som en dimension:
Phrase
Skapa följande beräknade dimensioner:
=FindOneOf(Phrase, 'e', 1)
=FindOneOf(Phrase, 'y', 1)
=FindOneOf(Phrase, 'ey', 1)
=FindOneOf(Phrase, 'e', 2)
=FindOneOf(Phrase, 'y', 2)
=FindOneOf(Phrase, 'ey', 2)
Resultattabell
Phrase
FindOneOf(Phrase, 'e', 1)
FindOneOf(Phrase, 'y', 1)
FindOneOf(Phrase, 'ey', 1)
FindOneOf(Phrase, 'e', 2)
FindOneOf(Phrase, 'y', 2)
FindOneOf(Phrase, 'ey', 2)
For a very long time
8
10
8
20
0
10
Has the potential for growth
7
0
7
12
0
12
Many tiny beads
12
4
4
0
9
9
För varje beräknad dimension returnerar utdata positionen för förekomsten av tecknen från sökuppsättningen för varje fras. Den första förekomsten av bokstaven e finns t.ex. på position 8, 7 och 12 för respektive fras. Den andra förekomsten av bokstaven e i varje fras finns på position 20, 12, och 0 (hittades inte). Den första förekomsten av bokstäverna "e eller y"finns t.ex. på position 8, 7 och 4 för respektive fras. Lägg märke till att i frasen For a very long time finns den första förekomsten av "e eller y" på position 8, ett e, och den andra förekomsten på position 10, ett y.
Följande kod visar hur du använder funktionen i ett laddningsskript.
Example:
Load *, FindOneOf(InputText, SearchFor, Occurrence) AS FindOneOf_Matches
Inline
InputText, SearchFor, Occurrence
my example text string, et%s,1
my example text string, et%s,3
my example text string, ¤%&,1
];
Resultattabell
InputText
SökEfter
Förekomst
FindOneOf_Matches
mitt textsträngsexempel
et%s
1
4
mitt textsträngsexempel
et%s
3
12
mitt textsträngsexempel
¤%&
1
0
Exempel – FindOneOf-scenariot
Översikt
I det här exemplet används funktionen FindOneOf för att analysera kundkommentarer i ett dataset med kundorder och identifiera order som kan kräva åtgärder. Varje order har ett CustomerComment-fält där kunderna kan lämna anteckningar eller kommentarer om sina order. Genom att analysera kommentarerna kan du identifiera specifika nyckelord eller tecken, t.ex. "!", "@", "#", som kan tyda på brådska eller särskilda önskemål.
Öppn skriptredigeraren och lägg till laddningsskriptet nedan till en ny flik.
Laddningsskriptet innehåller:
En datauppsättning som läses in i en datatabell som heter Example.
Följande fält i datatabellen:
TicketID ärendets id-nummer
CustomerComment den ursprungliga textsträngen
Laddningsskript
Example:
Load * inline [
TicketID, CustomerComment
1, I need this order ASAP!
2, Please confirm my order @12345.
3, Can you update my order?
4, I have a question about #discount.
5, Thank you!
];
Resultat
Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:
Jämför utdata från funktionen FindOneOf med de ursprungliga CustomerComment-strängvärdena som laddades i skriptet. Med hjälp av värdena !,@,#, kunde funktionen returnera den position där dessa tecken förekommer i kommentarssträngen. Den slutliga åtgärden använder en villkorlig If-sats för att identifiera poster som innehåller något av söktecknen och markera dem som High Priority. Om inget av söktecknen !,@,# hittas, t.ex. rad 3, klassificeras ärendet som Normal Priority.
Var den här sidan till hjälp för dig?
Om du hittar några fel på denna sida eller i innehållet – ett stavfel, ett steg som saknas eller ett tekniskt fel – berätta för oss så att vi kan blir bättre!