문자열에서 문자의 위치를 추출하는 방법은 무엇입니까?점 또는 char(숫자 및 특수 문자 없음)와 같은 char 문자열이 포함된 다음 열이 있습니다.
점이 아닌 문자의 위치를 나열하는 열을 생성하고 싶습니다. 아래의 예를 참조하십시오.
JMP에서 사용할 수 있는 공식이나 스크립트가 있습니까?
·cgaagt··a··········· 2,3,4,5,6,7,10
··t·a·············c·· 3,5,19
······
데이터 테이블Re: 문자열에서 문자의 위치를 추출하는 방법은 무엇입니까?스크립트를 작성해야 할 것 같습니다.
- 다음을 사용하여 문자열을 목록으로 변환 단어(문자열, "")
- Substitute를 사용하여 관심이 없는 모든 값을 빈 문자열(결측값)로 바꿉니다.
- Loc NonMissing을 사용하여 결측값이 아닌 인덱스 찾기
Names Default To Here(1);
a = "·cgaagt··a···········";
b = "··t·a·············c··";
c = "·····················";
list_of_chars = Words(a, "");
Substitute Into(list_of_chars, "·", "");
Show(AsList(Loc Nonmissing(list_of_chars)));
a = "··t·a·············c··";
list_of_chars = Words(a, "");
Substitute Into(list_of_chars, "·", "");
Show(AsList(Loc Nonmissing(list_of_chars)));
a = "·····················";
list_of_chars = Words(a, "");
Substitute Into(list_of_chars, "·", "");
Show(AsList(Loc Nonmissing(list_of_chars)));
//As List(Loc Nonmissing(list_of_chars)) = {2, 3, 4, 5, 6, 7, 10};
//As List(Loc Nonmissing(list_of_chars)) = {3, 5, 19};
//As List(Loc Nonmissing(list_of_chars)) = {};Re: 문자열에서 문자의 위치를 추출하는 방법은 무엇입니까?확장 @jthi 훌륭한 솔루션입니다. 문제를 처리하는 가장 좋은 방법은 결과를 배치할 새 열을 만드는 것입니다.또한 "." 특수 문자로 사용할 수 있습니다.따라서 아래 JSL은 여러 특수 문자를 처리할 수 있는 수식이며 새 열에 결과를 반환하기도 합니다.문자 열을 만들고 수식을 잘라내어 붙여넣기만 하면 됩니다.

list_of_chars = Words( :strings, "" );
Substitute Into( list_of_chars, ".", "", "+", "", "/", "" );
charList = As List( Loc Nonmissing( list_of_chars ) );
Substr( Char( charList ), 2, Length( Char( charList ) ) - 2 );