Programming/UE5

[Regex] 유효한 에셋 이름 정규식으로 체크하기 - 메모용

Dorasima 2023. 9. 2. 22:49

0. Rename 하는 Script를 정규식으로 시도해보려 한다.

- Unreal에서 제공하는 FRegexMatcher 와 FRegexPattern을 사용해보자.

FRegexMatcher | Unreal Engine Documentation

 

FRegexMatcher

Implements a regular expression pattern matcher.

docs.unrealengine.com

FRegexPattern | Unreal Engine Documentation

 

FRegexPattern

Implements a regular expression pattern.

docs.unrealengine.com

 

1.  유효한 Asset 이름은 아마도...

- 알파벳 + 숫자 + 언더스코어 + 플러스 사인 + 마이너스 사인으로 이루어진 문자열이다.

- 공백이나 다른 스페셜 심볼은 허용되지 않는다.

- 아마도?

 

2. 그걸 체크하는 정규식은... 아마도??

FString(TEXT("^[0-9a-zA-Z_\\-\\+][0-9a-zA-Z_\\-\\+]*$"))

- 일듯?

- 해당하는 캐릭터가 하나 이상 있으면 만족한다.

 

3. 그래서

이렇게 했다.

- 모든 걸 테스트 해보지는 않았고 + Renaming 시, 언더스코어 중복을 어떻게 처리해야 할지 고민중이지만, 현재 까지는 잘 작동하는 듯보인다.