PowerApps의 EndsWith 및 StartsWith 함수EndsWith and StartsWith functions in PowerApps

텍스트 문자열이 다른 텍스트 문자열로 시작되거나 끝나는지 테스트합니다.Tests whether a text string begins or ends another text string.

설명Description

EndsWith 함수는 텍스트 문자열이 다른 텍스트 문자열로 끝나는지 테스트합니다.The EndsWith function tests whether one text string ends with another.

StartsWith 함수는 텍스트 문자열이 다른 텍스트 문자열로 시작하는지 테스트합니다.The StartsWith function tests whether one text string begins with another.

두 함수 모두, 테스트에서 대/소문자를 구분하지 않습니다.For both functions, the tests are case insensitive. 두 함수의 반환 값은 부울 true 또는 false입니다.The return value of both is a Boolean true or false.

EndsWithStartsWithFilter 함수와 함께 사용하여 앱 내의 데이터를 검색합니다.Use EndsWith and StartsWith with the Filter function to search the data within your app. in 연산자나 Search 함수를 사용하면 시작이나 끝뿐만 아니라 텍스트 문자열 내 어디든지 볼 수 있습니다.You can also use the in operator or the Search function to look anywhere within text strings, not just at the beginning or end. 함수의 선택은 앱의 필요에 따라 달라지며 특정 데이터 원본에 대해 위임할 수 있는 함수에 따라 달라집니다.Your choice of functions will depend on the needs of your app and which function can be delegated for your particular data source. 이러한 함수 중 위임할 수 없는 함수가 있으면 이러한 제한 사항을 경고하기 위해 수식 작성 시 위임 경고가 표시됩니다.If one of these functions can't be delegated, a delegation warning will appear at authoring time to warn you of this limitation.

구문Syntax

EndsWith( Text, EndText )EndsWith( Text, EndText )

  • Text – 필수 항목입니다.Text – Required. 테스트할 텍스트입니다.The text to test.
  • EndText – 필수 항목입니다.EndText – Required. Text의 끝에서 검색할 텍스트입니다.The text to search for at the end of Text. EndText가 빈 문자열이면 EndsWithtrue를 반환합니다.If EndText is an empty string, EndsWith returns true.

StartsWith( Text, StartText )StartsWith( Text, StartText )

  • Text – 필수 항목입니다.Text – Required. 테스트할 텍스트입니다.The text to test.
  • StartText – 필수 항목입니다.StartText – Required. Text의 시작 부분에서 검색할 텍스트입니다.The text to search for at the beginning of Text. StartText가 빈 문자열이면 StartsWithtrue를 반환합니다.If StartText is an empty string, StartsWith returns true.

Examples

수식Formula 설명Description 결과Result
EndsWith( "Hello World", "world" )EndsWith( "Hello World", "world" ) "Hello World""world" 로 끝나는지 테스트합니다.Tests whether "Hello World" ends with "world". 이 테스트는 대/소문자를 구분하지 않습니다.The test is case insensitive. truetrue
EndsWith( "Good bye", "good" )EndsWith( "Good bye", "good" ) "Good bye""good" 으로 끝나는지 테스트합니다.Tests whether "Good bye" ends with "good". EndText 인수("good")가 텍스트에 나타나지만 끝에 나타나지는 않습니다.The EndText argument ("good") appears in the text but not at the end. falsefalse
EndsWith( "Always say hello", "hello" )EndsWith( "Always say hello", "hello" ) "Always say hello""hello" 로 끝나는지 테스트합니다.Tests whether "Always say hello" ends with "hello". truetrue
Endswith( "Bye bye", "" )Endswith( "Bye bye", "" ) "Bye bye" 가 빈 텍스트 문자열(Len이 0을 반환함)로 끝나는지 테스트합니다.Tests whether "Bye bye" ends with an empty text string (Len returns 0). 필터 식에서 사용을 줄이면, 이런 경우 EndsWithtrue를 반환하도록 정의됩니다.Easing its use in Filter expressions, EndsWith is defined to return true in this case. truetrue
수식Formula 설명Description 결과Result
StartsWith( "Hello World", "hello" )StartsWith( "Hello World", "hello" ) "Hello World""hello" 로 시작하는지 테스트합니다.Tests whether "Hello World" begins with "hello". 이 테스트는 대/소문자를 구분하지 않습니다.The test is case insensitive. truetrue
StartsWith( "Good bye", "hello" )StartsWith( "Good bye", "hello" ) "Good bye""hello" 로 시작하는지 테스트합니다.Tests whether "Good bye" begins with "hello". falsefalse
StartsWith( "Always say hello", "hello" )StartsWith( "Always say hello", "hello" ) "Always say hello""hello" 로 시작하는지 테스트합니다.Tests whether "Always say hello" begins with "hello". "hello" 가 텍스트에 나타나지만 처음에 나타나지는 않습니다.Although "hello" appears in the text, it doesn't appear at the beginning. falsefalse
StartsWith( "Bye bye", "" )StartsWith( "Bye bye", "" ) "Bye bye" 가 빈 텍스트 문자열(Len이 0을 반환함)로 시작하는지 테스트합니다.Tests whether "Bye bye" starts with an empty text string (Len returns 0). 필터 식에서 사용을 줄이면, 이런 경우 StartsWithtrue를 반환하도록 정의됩니다.Easing its use in Filter expressions, StartsWith is defined to return true in this case. truetrue

검색 사용자 환경Search user experience

많은 앱에서 하나 이상의 문자를 검색 상자에 입력하면 큰 데이터 집합의 레코드 목록을 필터링할 수 있습니다.In many apps, you can type one or more characters into a search box to filter a list of records in a large data set. 입력하는 동안 검색 조건과 일치하는 레코드만 목록에 표시됩니다.As you type, the list shows only those records that match the search criteria.

이 문서의 나머지 부분에 있는 예제는 다음 데이터가 포함된 Customers 목록을 검색한 결과를 보여줍니다.The examples in the rest of this topic show the results of searching a Customers list that contains this data:

이 데이터 원본을 컬렉션으로 만들려면 Button 컨트롤을 만들고 OnSelect 속성을 다음 수식으로 설정합니다.To create this data source as a collection, create a Button control and set its OnSelect property to this formula:

ClearCollect( Customers, Table( { Name: "Fred Garcia", Company: "Northwind Traders" }, { Name: "Cole Miller", Company: "Contoso" }, { Name: "Glenda Johnson", Company: "Contoso" }, { Name: "Mike Collins", Company: "Adventure Works" }, { Name: "Colleen Jones", Company: "Adventure Works" } ) )ClearCollect( Customers, Table( { Name: "Fred Garcia", Company: "Northwind Traders" }, { Name: "Cole Miller", Company: "Contoso" }, { Name: "Glenda Johnson", Company: "Contoso" }, { Name: "Mike Collins", Company: "Adventure Works" }, { Name: "Colleen Jones", Company: "Adventure Works" } ) )

이 예제에서와 같이 화면 하단의 갤러리 컨트롤에 레코드 목록을 표시할 수 있습니다.As in this example, you can show a list of records in a Gallery control at the bottom of a screen. 사용자가 관심 있는 레코드를 지정할 수 있도록 화면 맨 위 가까이에 SearchInput이라는 텍스트 입력 컨트롤을 추가합니다.Near the top of the screen, you can add a Text input control, named SearchInput, so that users can specify which records interest them.

사용자가 SearchInput에 문자를 입력하면 갤러리의 결과가 자동으로 필터링됩니다.As the user types characters in SearchInput, the results in the gallery are automatically filtered. 이 경우 갤러리는 고객 이름(회사 이름 아님)이 SearchInput의 문자 시퀀스로 시작하는 레코드를 표시하도록 구성됩니다. 사용자가 검색 상자에 co를 입력하면 갤러리에 다음 결과가 표시됩니다.In this case, the gallery is configured to show records for which the name of the customer (not the name of the company) starts with the sequence of characters in SearchInput.If the user types co in the search box, the gallery shows these results:

Name 열을 기준으로 필터링하려면 갤러리 컨트롤의 Items 속성을 다음 수식 중 하나로 설정합니다.To filter based on the Name column, set the Items property of the gallery control to one of these formulas:

수식Formula 설명Description 결과Result
Filter( Customers, StartsWith( Name, SearchInput.Text ) )Filter( Customers, StartsWith( Name, SearchInput.Text ) ) Customers 데이터 원본을 Name 열의 시작 부분에 검색 문자열이 나타나는 레코드로 필터링합니다.Filters the Customers data source for records in which the search string appears at the start of the Name column. 이 테스트는 대/소문자를 구분하지 않습니다.The test is case insensitive. 사용자가 검색 창에 co를 입력하면 갤러리에 Colleen JonesCole Miller가 표시됩니다.If the user types co in the search box, the gallery shows Colleen Jones and Cole Miller. Mike Collins는 레코드의 Name 열이 검색 문자열로 시작하지 않기 때문에 갤러리에 표시되지 않습니다.The gallery doesn't show Mike Collins because the Name column for that record doesn't start with the search string.
Filter( Customers, SearchInput.Text in Name )Filter( Customers, SearchInput.Text in Name ) Customers 데이터 원본을 Name 열의 아무 곳에나 검색 문자열이 나타나는 레코드로 필터링합니다.Filters the Customers data source for records in which the search string appears anywhere in the Name column. 이 테스트는 대/소문자를 구분하지 않습니다.The test is case insensitive. 사용자가 검색 상자에 co를 입력하면 Colleen Jones, Cole Miller, Mike Collins가 갤러리에 표시됩니다. 이러한 레코드의 Name 열 어딘가에 검색 문자열이 나타나기 때문입니다.If the user types co in the search box, the gallery shows Colleen Jones, Cole Miller, and Mike Collins because the search string appears somewhere in the Name column of all of those records.
Search( Customers, SearchInput.Text, "Name" )Search( Customers, SearchInput.Text, "Name" ) in 연산자를 사용하는 경우와 유사하게, Search 함수는 각 레코드의 Name 열 내에서 일치하는 항목을 검색합니다.Similar to using the in operator, the Search function searches for a match anywhere within the Name column of each record. 열 이름은 큰따옴표로 묶어야 합니다.Note that you must enclose the column name in double quotation marks.

Company 열과 Name 열을 포함하도록 검색 범위를 확장할 수 있습니다.You can expand your search to include the Company column as well as the Name column:

수식Formula 설명Description 결과Result
Filter( Customers, StartsWith( Name, SearchInput.Text ) || StartsWith( Company, SearchInput.Text ) )Filter( Customers, StartsWith( Name, SearchInput.Text ) || StartsWith( Company, SearchInput.Text ) ) Customers 데이터 원본을 Name 열 또는 Company 열이 검색 문자열(예: co)로 시작하는 레코드로 필터링합니다.Filters the Customers data source for records in which either the Name column or the Company column starts with the search string (for example, co). StartsWith 함수 중 하나가 true이면 || 연산자true입니다.The || operator is true if either StartsWith function is true.
Filter( Customers, SearchInput.Text in Name || SearchInput.Text in Company )Filter( Customers, SearchInput.Text in Name || SearchInput.Text in Company ) Customers 데이터 원본을 Name 열 또는 Company 열에 검색 문자열(예: co)이 들어 있는 레코드로 필터링합니다.Filters the Customers data source for records in which either the Name column or the Company column contains the search string (for example, co) anywhere within it.
Search( Customers, SearchInput.Text, "Name", "Company" )Search( Customers, SearchInput.Text, "Name", "Company" ) in 연산자를 사용하는 경우와 유사하게, Search 함수는 Customers 데이터 원본에서 Name 열 또는 Company 열에 검색 문자열(예: co)이 들어 있는 레코드를 검색합니다.Similar to using the in operator, the Search function searches the Customers data source for records in which either the Name column or the Company column contains the search string (for example, co) anywhere within it. 여러 열 및 다수의 in 연산자를 지정하는 경우 Search 함수가 Filter보다 읽고 쓰기 쉽습니다.The Search function is easier to read and write than Filter if you want to specify multiple columns and multiple in operators. 열 이름은 큰따옴표로 묶어야 합니다.Note that you must enclose the names of the columns in double quotation marks.