문자열 내에서 대괄호 사이의 문자를 얻는 방법은 무엇입니까 ??안녕하세요 여러분,
아래와 같은 문자열이 있습니다. " [CDO600705010] [S 88ABCV AB IT] [C23204348IT] "
여는 괄호와 닫는 괄호 사이에 문자를 가져오는 방법을 알고 계십니까?
예를 들어:
CDO600705010
S 88ABCV AB IT
C23204348IT
감사합니다
고급 통계 모델링소비자 및 시장 조사데이터 접근Re: 문자열 내에서 대괄호 사이의 문자를 가져오는 방법은 무엇입니까??나는 확실히 Word() 또는 Words()를 사용하고 싶지만 문자 패턴 JMP의 물건. 배우기가 상당히 어려우며 더 간단한 방법에 비해 사용이 약간 제한될 수 있습니다(배울 필요가 없습니다). 다음에서 찾은 스크립트에서 수정된 스크립트 Re: 문자열에서 텍스트 추출 (게시물에는 일치에 대한 설명도 있습니다)
Names Default To Here(1);
// see https://community.jmp.com/t5/Discussions/Extract-text-from-string/td-p/450420
txt = " [CDO600705010] [S 88ABCV A B IT] [C23204348IT] ";
sp = Pat Span("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890 ");
found_list = {};
Pat Match(
txt,
"[" + sp >> match + ("]") + Pat Test(
Insert Into(found_list, match);
0;
)
);
show(found_list);
// found_list = {"CDO600705010", "S 88ABCV A B IT", "C23204348IT"};
하지만 여러 괄호 사이의 매칭은 문자 패턴을 사용하는 나 자신을 볼 수 있는 한 곳이 될 수 있습니다.
또한보십시오 스크립팅 가이드 > 데이터 유형 > 패턴 일치
Re: 문자열 내에서 대괄호 사이의 문자를 가져오는 방법은 무엇입니까??단어() JMP 사용자라면 누구나 알아야 할 기능입니다.
수식 편집기 기능 하나만 배운다면 Word()가 그 기능입니다.
Re: 문자열 내에서 대괄호 사이의 문자를 가져오는 방법은 무엇입니까??좋아요 @txnelson 의 접근 방식입니다. 나는 그것을 자주 사용한다. 캐릭터 기능이 편리해요!
대신 Regex()를 사용하는 또 다른 접근 방식이 있습니다. 이는 해결책이 아닙니다. 이는 각 문자열을 구문 분석하는 방법을 보여줍니다. 두 가지 검색 패턴을 보여주지만 다른 패턴도 가능합니다. 많은 문자열을 고려해야 할 수도 있으므로 어떤 방법이 더 빠른지 궁금합니다.
Names Default to Here( 1 );
string = { "[CDO600705010]", "[S 88ABCV A B IT]", "[C23204348IT]" };
n = N Items( string );
For( s = 1, s <= n, s++,
Show(
Regex( string[s], "([\w\d\s]+)", "\1" );
);
);
For( s = 1, s <= n, s++,
Show(
Regex( string[s], "[^\-[\]]+" );
);
);
Re: 문자열 내에서 대괄호 사이의 문자를 가져오는 방법은 무엇입니까??놀라운! 감사합니다 그것은 기적처럼 작동합니다
Re: 문자열 내에서 대괄호 사이의 문자를 가져오는 방법은 무엇입니까??s=" [CDO600705010] [S 88ABCV A B IT] [C23204348IT] ";
one = word(2,s,"[]");
show(one);
/*:
one = "CDO600705010";