개인 자료란 (JE)

  서버 커뮤니티

Profile ron_sa 정품인증자

ron_sa a469b8b74d5b4b778a78cd225101abff

Profile

질문하기 스크립트

스크립트로 채팅 감지하는법에 대한 질문이 있어요!

2021.05.02 조회 수 636 추천 수 0

on chat:
    if {ma.start} is true:
        cancel event
        if message match "[0-9]*":
            send "테스트 성공"
            stop
        else if message partially match "[+]":
            replace first "+" with "" in message
            if message match "[0-9]+":
                send "테스트 성고옹"
            else:
                send "실패!"
        else:
            send "실패!"


제가 이런 구문을 짰는데요, 구문은 {ma.start}가 true 일때, 채팅에 숫자만 쓴다면 "테스트 성공"이 뜨고 숫자말고 다른걸 쓴다면 "실패!" 가 뜨는데, 만약 +1000 같이 + 하나가 숫자와 있다면 "테스트 성고옹" 이라고 뜨는 구문인데요,


근데 이 구문에서 10+10과 같이 +를 중간에 넣어도 "테스트 성고옹"이 잘 뜹니다.  저는 +100 처럼 +를 채팅의 처음에 칠때만 "테스트 성고옹"이 나오게 하고 싶습니다. 어떻게 해야할까요..?



+아 그리고 제가 match라는 표현을 처음써봐서, 

이 구문을 만들땐 if message match "[0-9]+": 부분을 이렇게가 아니라 if message match "[0-9]*":  이렇게 썼는데요, 

이렇게 쓰면 채팅에서 숫자없이 그냥 +만 쳐도 "테스트 성고옹"이 나오길래 [0-9]*대신에 [0-9]+를 써봤더니  잘 되더라고요..? 

[0-9]+가 어떤걸 의미하는지 아시는분 있으면 추가로 알려주시면 감사하겠습니다!

2개의 댓글

명이
2021.05.25

인덱스 슬라이싱 마렵다...

DDang_
2021.06.09

+ 로 시작하는거면 start with 구문을 사용하는 것도 좋을 것 같습니다