Excel에서 두 문자 사이의 텍스트를 추출하는 방법

Excel에서 두 문자 사이의 텍스트를 추출하는 방법

"en_US@"와 ";" 사이에서 제품 정보를 추출하려고 합니다. 예를 들어 "en_US@Terminal Block;"이 주어진 경우 터미널 블록을 반환하고 싶습니다. 이를 수행하는 방법은 다음과 같습니다.

=MID(B2, FIND("en_US@",B2)+6, FIND(";", B2, FIND("@", B2)+1)-FIND("@",B2)-1)

맞습니다.

내 질문은 "??_??@"를 찾을 코드의 옵션으로 포함하여 "en_US" 또는 "??_??"를 찾는 코드를 작성할 수 있느냐는 것입니다. 텍스트 추출을 시작하려면?

답변1

이것은 작동하는 것 같습니다:

=IF(SUMPRODUCT( -- ISNUMBER(SEARCH({"en_US@","~?~?_~?~?@"},A1)))>0,MID(A1, FIND("@",A1)+1, FIND(";", A1, FIND("@", A1)+1)-FIND("@",A1)-1),"NA")

마법은 SUMPRODUCT( -- ISNUMBER(SEARCH({...},cell)))>0 비트에 있습니다.여기

"?"를 구체적으로 SEARCH()하려면 검색에서 "?"를 처리하므로 물결표로 각 항목을 구분해야 합니다. 기본적으로 와일드카드로 사용됩니다.

원본에서 변경된 유일한 다른 점은 IF()로 시작하여 문자 시퀀스 중 하나를 찾은 다음 "@"를 찾는 것입니다.

관련 정보