2009-11-09 5 views
0

기본적으로 chatid를 얻으려면 AppleScript로 CHAT CREATE 명령의 응답 문자열을 구문 분석해야합니다. 응답은 다음과 같습니다 MULTICHATAppleScript로 Skype 응답을 구문 분석하는 방법은 무엇입니까?

내가 노력

채팅 번호의 my.username/$ 123abc456blah 상태

set chatid to item 2 of response 

하지만 반환 'H'는 것을 - 나는 또한

시도
set chatid to word 2 of response 

하지만 'my'를 반환합니다. 나는 이것이 AppleScript를 아는 사람에게 쉬운 질문이라고 생각한다. 다음은 샘플 스크립트입니다 ...

tell application "Skype" 
    set response to (send command "CHAT CREATE username1, username2" script name "MyScript") 
    set chatid to ***WHAT GOES HERE?*** 
    send command "ALTER CHAT " & chatid & " SETTOPIC Hello" script name "MyScript" 
end tell 

답변

3

매우 가깝습니다. 이 시도 :

set oldDelims to AppleScript's text item delimiters 
set AppleScript's text item delimiters to {" "} 
set chatid to text item 2 of response 
set AppleScript's text item delimiters to oldDelims 
+0

그 트릭을했습니다. 감사! –

+0

* AppleScript의 텍스트 항목 구분 기호 * 트릭은 정말 빨리 읽을 수 없게됩니다. 코드에 주석을 달아라. – ZJR

0

을이 하나가 당신에게 (내가 #my.username/$123abc456blah 부분은 가정)에 ID 부분

set c to "CHAT #my.username/$123abc456blah STATUS MULTICHAT" 
set hm to do shell script "perl -e '\"" & c & "\"=~/\\w (.*?) \\w/;print$1' " 

그러나 이것은 내가 사용 무거운 할 펄 전화, 순수하지 AppleScript로 제공 정규 표현식.

관련 문제