'포함 된 경우'에 대한 Google 스프레드 시트 수식


37

IF하나의 셀에서 항목 목록 을 식별 하는 방법에 값이나 문자열이 포함되어 있는지 확인하려고 합니다.

셀 A1에 포함되어 있습니다 sites, sheets, docs, slides.

셀 B1에 1 'if'셀 A1에 문자열이 포함되도록 표시하고 싶습니다 sites.

공식

=if(A1 ?????? "sites", 1,0)

??????위의 수식 내에서 무엇을 대체 해야하는지 또는이 수식이 가능한지 확실하지 않습니다 . 원하는 결과를 얻는 방법에 대한 아이디어는 대단히 감사합니다.

답변:


52

REGEXMATCH를 사용할 수 있습니다.

=IF(REGEXMATCH(A1, "sites"), 1, 0)

설명하기 위해 REGEXMATCH는 인수가 문자열의 하위 문자열 인 경우에만 true를 반환합니다.


10
사용하는 regexmatch것이 더 간단합니다 : if(regexmatch(A1, "sites"), 1, 0).

1
regexmatch가 이미 부울을 리턴하므로 "if"는 필요하지 않으므로 "REGEXMATCH (A1,"sites ")"
David

2
if는 존재하므로 true를 1 또는 0으로 변환 할 수 있습니다
Aurielle Perlmann

7

=if(search("sites",B2)>0,1,0)

=if(IFERROR(search("sites",B2)>0,0),1,0)

둘 다 작동합니다. 오류가 있으면 두 번째는 0을 씁니다.


2
첫 번째 수식은 찾을 수 없을 SEARCH(search_for, text_to_search, [starting_at])때 오류를 반환 하므로 0 을 반환 search_for하지 않습니다.
Rubén

1

"sites"라는 단어가있는 행 수 또는 평균 행 수를 알고 싶을 수 있습니다. A 열에 100 행의 항목이 있다고 가정하면이 함수를 사용하여 "사이트"라는 단어가있는 행 수를 찾을 수 있습니다.

=QUERY(A1:A100, "select count(A) where A like '%sites%'")

이것은 1과 0의 열을 만든 다음 새 열에서 작업하는 것보다 훨씬 빠릅니다.


열 대신 상자에서 작동 할 수 있습니까?
Adam Starrh

예. 대신 A1:A100당신이 그것을 만들 수있는 A1:C100다음 열을 A, B와 C와 쿼리 쓰기
라이언 Shillington

1

REGEX가없는 솔루션 :

=if(iserror(FIND("sites",B2)),0,1)

문자열을 찾을 수없는 경우에는 대소 문자와 if논리를 바꿔야합니다 true.


이것은 기본적 으로이 답변 과 동일 하지만 대소 문자를 구분합니다. 그런데 OP가 제공 한 샘플 데이터는 포함 sheets하지 않습니다 Sheets.
Rubén


0

Ryan Shillington이 제안한대로 "사이트"가있는 범위 내의 셀 수를 알고 싶다면 다음을 시도해보십시오.

=COUNTIF(A1:A100;"*sites*") 

*는 와일드 카드 개념의 역할을하므로 전체 셀과 정확히 일치하는 것이 아니라 셀 내 어디에서나 일치하는 항목을 찾습니다.

또한 " sites " 대신 셀 참조를 사용하여이 작업을 수행 했지만 셀의 텍스트에 와일드 카드 별표를 추가해야합니다.


0

별표 옵션을 사용하고 셀 참조를 원하는 경우 CONCATENATE 함수를 사용하여 별표를 추가 할 수 있습니다.

=COUNTIF(A1:A100,CONCATENATE("*",A1,"*"))

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.