매크로

정보
2015.04.17 15:47

Array 확장

조회 수 751 추천 3 댓글 13

오토핫키의 별볼일 없는 Array를 진짜 Array처럼 확장시켜주는 소스입니다


Concat(array2,array3,...,arrayX) ? ? ? ? ?- join two or more arrays

IndexOf(Item, Start := "") ? ? ? ? ? ? ? ?- searches the array for item, front to back

Join(Sep := ",") ? ? ? ? ? ? ? ? ? ? ? ? ?- joins the elements of an array into a string

LastIndexOf(Item, Start := "") ? ? ? ? ? ?- searches the array for item, back to front

Length() ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?- returns the number of elements

Pop() ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? - returns and removes last element of array

Push(item1, item2, ..., itemX) ? ? ? ? ? ?- adds new items to the end of the array

Reverse() ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? - reverses the order of the elements

Shift() ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? - returns and removes first element of array

Slice(Start, End := "") ? ? ? ? ? ? ? ? ? - returns the selected elements as a new array

Sort(Options := "") ? ? ? ? ? ? ? ? ? ? ? - sorts the items of the array

Splice(Start, HowMany, item1, ..., itemX) - adds/removes items to/from the array

Unshift(item1,item2, ..., itemX) ? ? ? ? ?- adds new items to the beginning of the array

위 명령을 추가로 사용 할 수 있습니다.


소스는 아래 링크에서 체크하시고..

아래에 예제만 붙여넣기 합니다.


출처 & 소스 :?http://www.autohotkey.com/board/topic/94602-additional-methods-for-indexed-arrays/


; Autoexecute
#NoEnv
#SingleInstance force

#Include Array Extensions.ahk

none := []
hege := ["Cecilie", "Lone"]
stale := ["Emil", "Tobias", "Linus"]
kai := ["Robin", "Tobias", "Walter"]
Num := [5,3,7,9,1,13,999,-4]

children := hege.Concat(stale, kai)
MsgBox, 0, Concat Arrays Building Children, % "Children =`n" children.Join("`n")

MsgBox, 0, IndexOf Tobias, % children.IndexOf("Tobias")

MsgBox, 0, IndexOf Tobias with Start = 5, % children.IndexOf("Tobias", 5)

MsgBox, 0, LastIndexOf Tobias, % children.LastIndexOf("Tobias")

MsgBox, 0, LastIndexOf Tobias with Start = 5, % children.LastIndexOf("Tobias", 5)

MsgBox, 0, LastIndexOf Tobias with Start = 5, % children.LastIndexOf("Tobias", 5)

MsgBox, 0, Length of Children, % children.Length()

MsgBox, 0, Pop an Element, % children.Pop()

MsgBox, 0, Array After Pop, % children.Join("`n")

MsgBox, 0, Push Micheal, % children.Push("Micheal").Join("`n")

MsgBox, 0, Shift an Element, % children.Shift()

MsgBox, 0, Array After Shift, % children.Join("`n")

MsgBox, 0, Unshift George, % children.Unshift("George").Join("`n")

MsgBox, 0, Slice Out Indexes 2 - 4, % children.Slice(2, 4).Join("`n")

MsgBox, 0, Splice - 2 Elements Removed at Index 3
, % children.Splice(3, 2, "Sally", "Amy").Join("`n")

MsgBox, 0, Splice - Sally`, Amy Added at Index 3
, % children.Join("`n")

MsgBox, 0, Sort Children, % children.Sort().Join("`n")

MsgBox, 0, Numerical Sort, % Num.Sort("N").Join("`n")

MsgBox, 0, Reverse Children, % children.Reverse().Join("`n")

return





  • profile
    성운이 2015.04.17 16:02
    배열을 쉽게 쓸 수 있겠네요!
    처음에 오토핫키에서 배열을 제대로 지원 안하는걸 보고 너무 실망했어요.. 배열도 지원 안하는 언어라니..!
  • 매크로맨서 2015.04.17 16:04

    splice만 짤라서 쓰고있는데 이거만으로도 참 편해집니다

    좋은 정보 올려주셨네요

  • 매크로맨서 2015.04.17 16:08

    아 남이 짤라논걸 쓰고있었는데

    ㅋㅋ 원래 여기에서 따왔나봐요

  • 모바게 2015.04.17 16:13
    다 돌고 도는거죠 ㅋㅋ
  • 제발등업좀2 2015.07.16 14:54
    모바게님 질문 드립니다.. 제가 평소 쓰던 배열방식이..

    배열:=[]
    배열:=[1,2,3,4,5,]
    배열불러오기 :=배열 [num]
    이런식으로 배열을 나열하고 불러왓는데.. 이건 어떤식으로.. 불러와야 하는지 잘모르겠네요..
  • 모바게 2015.07.16 14:58
    링크된곳에서 소스 받아서 따로 저장후, include 해주고.. 배열은 똑같이 사용하면 됩니다.
    기본배열보다 명령어가 많아지는거에요.
    아래쪽 예제처럼 배열.Push(item) 이런식으로 사용이 가능하고요.
    한번씩만 실행해보면 이해될거에요^^
  • 제발등업좀2 2015.07.16 15:05
    외부 AHK 를 불러다 쓰는건가요?
    그렇군요 감사합니다 ^_^ 한번씩 사용해봐야겠네요;; 제가 말그대로 일자무식(컴언어) 하여 ㅠㅠ
    테일스타에서 만 배우다보니 견문 과 .. 지식이 많이 짧습니다 . 정말 한줄한줄 도움말씀 너무나 감사합니다 ^^

    P.S Push(item1, item2, ..., itemX) ? ? ? ? ? ?- adds new items to the end of the array
    요부분 원래 ???? 로 나오는지요 ;;얼마전부터 테일 스타 에서 글보면 ??? 로 깨지기에 여쭈어봅니다
  • 모바게 2015.07.16 15:48
    tab을 space로 변환해서 올린건데 ??로 나오네요 ㅋㅋ
    테일스타에서 db 이전이나, 사이트 설정이 좀 변했을 수 있어요.. 그냥 ?? 는 무시하세요
  • 제발등업좀2 2015.07.16 15:50
    아그래소..얼마전부터 저렇게 나오는군요.. ㄱㅅ 합니다.. 영어 가부족하여..열심히.. 번역기 돌리네요..ㅜ.ㅜ 공부좀할껄 후회됩니다.
  • 제발등업좀2 2015.07.16 17:13
    몇개는 이해가안가네요 ㅠ.ㅠ ㅋ; 신기한게 정말 많네요 ;; 잘쓰겠습니다 ^_^
  • 제발등업좀2 2015.07.16 17:42

    모바게님 죄송합니다 질문하나만 드리겠습니다..
    이것저것 실험하다가 궁금증이 발동하여 질문드립겠습니다.
    가 := none.IndexOf(19,Start := "2")요부분에서 2 는 무슨 의미인가요??
    ㅜ.ㅜ 혹시 알려주실수있으신지요
    아래는 제가 실험하던 간단한 스크립트입니다.
    가 뒤에 2 를 아무렇게나해도 잘찾더라구요;;그뒤에 2 가 뭔지 감을 잡지 못하여 이렇게 질문드립니다

    포럼 번역기 돌려보니 시작위치 어디에서 검색을 시작합니다 라고 번역이 나오는데

    이게 무슨말인지..

    f1::

    시작 := [1,2,3,4,5,6,7,8,9,10,"가","나"]
    종료 := ["나","가",15,16,17,18,19,20,"다"]

    none := 시작.Concat(종료)

    가 := none.IndexOf(19,Start := "2")
    if (ErrorLevel = 1)
     {
      MsgBox,못찾음
     }
    else if (ErrorLevel =0)
     {
      MsgBox,찾음 %가%
     }

    return

  • 모바게 2015.07.16 19:01
    찾는 시작위치를 지정하는겁니다
    적어주신부분에서 none => [1,2,3,4,5,6,7,8,9,10,"가","나","나","가",15,16,17,18,19,20,"다"]
    "가"의 위치는 11번째, 14번째.. 두군데 있네요.

    none.IndexOf("가", 10) => 찾음 11
    none.IndexOf("가", 12) => 찾음 14
    none.IndexOf("가", 15) => 못찾음
  • 제발등업좀2 2015.07.16 19:23
    아.. 중복되는거 찾을때.. 이런게 하는거군요.. 어쩐지.. 같은 값 가지고.. ㅡㅡ 시작위치를 하니 매번똑같더라...ㅜ.ㅜ 이해가 안되는데. 정말감사합니다. 매번 감사합니다

List of Articles
분류 제목 글쓴이 최근변경 추천
정보 Array 확장 13 모바게 2015.07.16 3/0
정보 [지니모션][블레이드][핸콕님매크로]+추가기능 v1.1 23 잠깐만요 2015.05.27 3/0
정보 오토핫키 미니 에디터 5 예지력1 2016.07.02 3/0
질문 매크로 제작자분들께 인증에 관한 질문드립니다. 17 모바게 2016.01.22 3/0
자유 저에게 도움주셨던 많은 분들께 인사하로 들렀습니다... 8 파더 2015.02.12 3/0
정보 GUI - 파일(폴더) 목록을 DropDownList로 만들기 14 모바게 2016.06.13 3/0
자유 세븐나이츠 매크로 만드는 중 11 보득 2015.02.25 3/0
정보 스크린샷 캡춰방법 (마지막이야기님 요청) 14 호로록뚝딱 2015.03.24 3/0
자유 쿠키런 비활성화 매크로 8 mauver 2015.03.25 3/0
자유 게임내용을 적을 때는 꼭 게임명을 제목에 적어주세요. 9 피카부 2016.06.15 3/0
질문 핫린이 한수 여쭙습니다 ^^ 3 ddd123 2023.02.24 2/0
질문 사인코드 어떻게 뚫죠? 2 푸파재대결 2023.02.24 2/0
자유 오토핫키 우회방법 가르쳐주실분구합니다 1 고생 2023.02.24 2/0
자유 던파 매크로 구해봅니다 1 ryuhda 2022.12.14 2/0
공유 자작)매크로 제작에 유용한 툴 ImageTool for Game 14 sama 2021.04.22 2/0
공유 pc카톡 채팅자동반응(비활성) 소스입니다 16 sama 2018.11.26 2/0
자유 와...비활성 이미지서치 진짜 힘드네요;; 7 테일하는병키 2017.11.11 2/0
자유 리니지m 매크로 소스 공유합니다 28 무쏘오 2019.06.11 2/0
공유 미완성 구이 공유합니다. 5 이무 2019.11.06 2/0
공유 다비쫄작 +만렙시 쫄 교체 + 차일드 창 꽉 찼을 시 1성... 16 한성수 2016.12.24 2/0
Board Pagination Prev 1 2345678910 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글