NGMsoftware

NGMsoftware
로그인 회원가입
  • 매뉴얼
  • 팁 앤 테크
  • 매뉴얼

    팁과 테크니컬 노하우를 확인하세요.

    팁 앤 테크

    팁과 테크니컬 노하우를 확인하세요.

    본 사이트의 컨텐츠는 저작권법의 보호를 받으므로 무단 복사, 게재, 배포 등을 금합니다.

    에디터 숫자 배열 변수에서 조건을 사용하여 특정 숫자보다 큰 값만 배열로 가져오는 방법.

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. [ OCR 체크 ]나 [ 데이타 테이블 ] 또는 [ 메모장 ]과 [ 엑셀 ]에서 데이타를 가져오면 배열로 처리할 수 있습니다. 배열로 가져온 값에서 특정 숫자보다 큰 값만 배열로 다시 만들려면 어떻게 해야 할까요? [ For 반복 ] 또는 [ Foreach 반복 ] 액션과 [ 배열 추가 ] 액션을 사용해서 처리할 수 있습니다. 하지만, 오늘은 이 방법이 아닌 다른 방법으로 문제를 해결해보도록 하겠습니다. 우선, 첨부되어 있는 배열 예제.ngs 파일을 다운로드 받은 후 엔지엠 매크로에서 열어보세요.

    b4mxX8H.png

     

     

    배열을 담을 [ array 변수 ]를 하나 추가했습니다. 그리고 이 변수에 아래와 같이 배열을 추가 했습니다.

    5,4,7,11,2,29,7,4,3,15

    1o1dfF6.png

     

     

    [ 웹 API를 이용해서 Json 응답 결과 ]를 사용해도 되고, 위에서 설명했듯이 메모장이나 엑셀의 데이타를 가져와서 처리해도 됩니다. 아무튼, 지금은 문자로 처리했습니다. 배열 변환 액션을 이용해서 데이타 테이블 또는 단순 배열을 가져와서 문자열로 연결할 수 있습니다. 웹 API를 이용해서 응답 결과를 받으면 문자열이라서 배열 추가와 같은 변환 로직은 필요없게 됩니다.

    ykFFrup.png

     

     

    마지막으로 [ C# 코드 실행 ] 액션으로 문자열을 배열로 바꾸고 특정 값보다 큰 값만 추려서 다시 배열로 만듭니다. [ 오토핫키 ]나 [ 파이썬 ]이 편하면 이걸 사용해도 됩니다.

    using System;
    using System.Collections.Generic;
    using System.Linq;
    
    public class Program
    {
        public string Main()
        {
            string arr = "{array}";
    
            List<int> numbers = arr.Split(',').Select(int.Parse).ToList();
            return string.Join(",", numbers.Where(w => w > 10).ToArray());
        }
    }

    Iz4ny36.png

     

     

    C# 코드는 간단합니다. 문자열을 가져와서 배열로 변환하고, Linq를 이용해서 10보다 큰 값만 배열로 다시 만들었습니다. 참고로, System.Linq.dll을 다운로드 받아서 [ 시스템 파일 복사 ] 액션을 이용해서 엔지엠 매크로 내부에 복사해야 합니다. 기본적으로 엔지엠 매크로에서 System.Core가 포함되어 있으므로 굳이 복사하지 않아도 정상 동작할겁니다. 하지만, 동작하지 않는다면 해당 라이브러리를 내부에 복사 후 사용하세요. 매크로를 실행 해보세요. 10보다 큰 값만 결과 값 속성에 나옵니다.

    RcGjp37.png

     

     

    코드에서 아래와 같이 10보다 작은 값만 추출하도록 수정 해보세요. 10보다 작은 값만 결과 값에 나옵니다.

    return string.Join(",", numbers.Where(w => w < 10).ToArray());

    jqtfjoZ.png

     

     

    C# 코딩을 할줄 알면 정말 다양하게 스크립트를 조작해서 사용할 수 있습니다. 날짜 연산도 쉽게 처리할 수 있는데요. 문제는~ 코딩을 하지 않기위해 엔지엠 매크로 솔루션을 이용한다는 점입니다. 따라서 가급적이면 코딩을 사용하지 않는게 좋겠지만, 코딩으로 처리하면 단순한 내용들이 액션을 조합해서 처리하면 복잡해지는 경우들이 있습니다. 이런 몇가지 경우들을 제외하면 엔지엠 매크로에서 제공해주는 액션들을 이용하시는게 좋습니다.

     

    개발자에게 후원하기

    MGtdv7r.png

     

    추천, 구독, 홍보 꼭~ 부탁드립니다.

    여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~

    감사합니다~

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천0 비추천0

    첨부파일

    댓글목록

    등록된 댓글이 없습니다.