FindOneOf()는 제공된 문자 집합의 문자 발견 위치를 찾기 위해 문자열을 검색합니다. 검색 집합에서 모든 문자의 N번째 발생 위치가 반환됩니다. 여기서 N은 함수의 선택적 세 번째 매개 변수입니다. 세 번째 매개 변수가 제공되지 않으면 첫 번째 발생 항목이 반환됩니다. 일치 항목이 발견되지 않으면 0이 반환됩니다.
구문:
FindOneOf(text, char_set[, count])
반환 데이터 유형: 정수
인수
인수
설명
text
원래 문자열입니다.
char_set
text에서 검색할 문자 집합입니다.
count
검색할 문자의 발생 위치를 정의합니다. 예를 들어 값이 2이면 두 번째 발생 항목을 검색합니다.
예: 차트 표현식
예
결과
FindOneOf( 'my example text string', 'et%s' )
e가 예 문자열의 네 번째 문자이므로 4를 반환합니다.
FindOneOf( 'my example text string', 'et%s', 3 )
검색이 e, t, % 또는 s 문자 중 하나이고 t이 문자열 예의 위치 12에서 세 번째로 발견되었기 때문에 12를 반환합니다.
FindOneOf( 'my example text string', '¤%&' )
문자열 예에 ¤, % 또는 & 문자가 없으므로 0을 반환합니다.
예 - FindOneOf 기본 사항
개요
데이터 로드 편집기를 열고 아래의 로드 스크립트를 새 탭에 추가합니다.
로드 스크립트에는 다음이 포함됩니다.
Example이라는 데이터 테이블에 로드되는 데이터 집합입니다.
데이터 테이블의 한 필드는 Phrase이며, 이 필드에는 처리할 원본 텍스트 문자열이 포함되어 있습니다.
로드 스크립트
Example:
Load *
Inline
[Phrase
Many tiny beads
For a very long time
Has the potential for growth
];
결과
데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 이 필드를 차원으로 추가합니다.
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)
결과 테이블
구
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
계산된 각 차원에 대해 출력은 각 구에 대한 검색 집합에서 문자가 발생한 위치를 반환합니다. 예를 들어, e 문자의 첫 번째 출현은 각 구에 대해 각각 8, 7 및 12 위치에서 발견됩니다. 각 구에서 e 문자의 두 번째 출현은 20, 12 및 0 위치에서 발견됩니다(찾을 수 없음). 마찬가지로, 각 구에 대해 'e 또는 y' 문자의 첫 번째 발생은 각각 8, 7 및 4 위치에서 발견됩니다. For a very long time 구에서 'e 또는 y'의 첫 번째 출현은 8 위치(e)에서 발견되고, 두 번째 출현은 10 위치(y)에서 발견됩니다.
다음 코드는 로드 스크립트에서 함수를 사용하는 방법을 보여 줍니다.
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
];
결과 테이블
InputText
SearchFor
Occurrence
FindOneOf_Matches
my example text string
et%s
1
4
my example text string
et%s
3
12
my example text string
¤%&
1
0
예 - FindOneOf 시나리오
개요
이 예에서는 FindOneOf 함수를 사용하여 고객 주문 데이터 집합에서 고객 의견을 분석하고 작업이 필요할 수 있는 주문을 식별합니다. 각 주문에는 고객이 주문에 대한 메모나 주석을 남길 수 있는 CustomerComment 필드가 있습니다. 주석을 분석하면 '!', '@', '#'과 같이 긴급성이나 특별 요청을 나타낼 수 있는 특정 키워드나 문자를 식별할 수 있습니다.
데이터 로드 편집기를 열고 아래의 로드 스크립트를 새 탭에 추가합니다.
로드 스크립트에는 다음이 포함됩니다.
Example이라는 데이터 테이블에 로드되는 데이터 집합입니다.
데이터 테이블의 필드는 다음과 같습니다.
TicketID 티켓의 식별 번호
CustomerComment 원래 텍스트 문자열
로드 스크립트
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!
];
FindOneOf 함수의 출력을 스크립트에 로드된 원래 CustomerComment 문자열 값과 비교합니다. !,@,# 값을 사용하여 함수는 주석 문자열에서 해당 문자가 발생하는 위치를 성공적으로 반환했습니다. 마지막 측정값은 조건부 If 문을 사용하여 검색 문자 중 하나를 포함하는 레코드를 식별하고 이를 High Priority로 지정합니다. 검색어 !,@,#이 하나도 발견되지 않으면(예: 행 3) 티켓은 Normal Priority로 분류됩니다.
이 페이지가 도움이 되었습니까?
이 페이지 또는 해당 콘텐츠에서 오타, 누락된 단계 또는 기술적 오류와 같은 문제를 발견하면 개선 방법을 알려 주십시오!