개인 자료란 (JE)

  서버 커뮤니티

Profile surbot 대표칭호 없음

surbot baabf81d1c36493384c085d731b119b1

Profile

질문하기 스크립트

스크립트 질문

2022.08.23 조회 수 148 추천 수 0
이해도 초보자(스크립트 구성요소나 기본문법은 알아요) 
게임버전 (JE) 1.19, 1.19.1, 1.19.2 
게임버전 (BE) 관련없음 
스크립트 버전 2.6.3 

그 혹시 {_name} 이라는 값이 "참나무3" 이런식이면

그값을 {_name1} 은 문자인 "참나무" {_name2} 은 숫자인 "3"으로 분리하고 싶은데 

방법 없을까요?9




14개의 댓글

qsef1256
2022.08.23

https://skripthub.net/docs/?id=909

qsef1256
2022.08.23

이 경우 구분자가 없으므로, regex로 사용하세요

qsef1256
2022.08.23

([^0-9]+)|([0-9]+)

surbot
2022.08.23
@qsef1256

저 이해가잘 안돼서 그러는데 혹시 {_name} 값이 "예시45" 라면 어떻게 분리해야하나요?

(Name값이 랜덤으로 문자와 숫자로 이루어지는 값이라서요)

qsef1256
2022.08.23
@surbot

그것까지 다 고려했어요

@surbot

잘 나뉘네요

surbot
2022.08.24
@qsef1256

아 demiter 부분에 이걸 적으면 돼나요?

surbot
2022.08.24
@surbot

([^0-9]+)|([0-9]+) 를?

surbot
2022.08.24
@surbot

그럼

set {_name1} to regex split {_name} by ([^0-9]+)|([0-9]+) 작성하면 돼나요

qsef1256
2022.08.24
@surbot

Docs 사용법 다시 보고 오세요

qsef1256
2022.08.24
@surbot

틀린 데가 한 군데도 아니고 세 군데입니다

qsef1256
2022.08.23
@surbot

이걸 어떻게 써야 할지 모르겠다면, Docs 사용법부터 다시 찾아서 보셔야 해요. 기초가 안되어 있단 소리에요

DDang_
2022.08.25

set {_name} to "참나무/3"

set {_splitResult::*} to {_name} split by "/"

set {_name1} to {_splitResult::1}

set {_name2} to {_splitResult::2}

 

이러면 참나무/3 문자열 기준으로 / 로 분할합니다.

그걸 {_splitResult::*} 목록 변수에 분할 순서대로 담아주고 -> 그래서 {_splitResult::*} 에는 "참나무" 와 "3" 이 담기게 됩니다.

그걸 각각 {_name1} 과 {_name2} 에 첫번째 참나무, 두번째 3을 분리시켜 담아주면 됩니다.

 

물론 먼저 답변을 남기신 qsef1256님 말대로 정규식을 사용할 수 있지만, 정규식 원리를 이해하고 사용하기에 버겁다면

참나무3 -> 참나무/3 으로 바꾸고 / 을 split 해서 목록 변수에 분리해서 담는 방식으로 편하게 로직을 짤 수 있습니다.

surbot
2022.08.26
@DDang_

감사합니다