본문 바로가기
728x90

Unity3D/Unity & C#43

Unity & C# ~ Regex 사용해보기 c#에서 문자열 패턴을 찾거나 문자열의 잘못된 입력 등을 확인할 때 사용할 수 있음. 메타문자 ^ 첫 글자 $ 마지막 글자 \w 문자(영숫자) \s 공백 \d 숫자 * 0 혹은 그 이상 + 1개 이상 ? 0 또는 1 . 새로운 라인을 제외한 한 문자 [ ] 가능한 문자 [^ ] 가능하지 않은 문자 [ - ] 가능한 문자 범위 {n , m} 최소 n개부터 최대 m개까지 ( ) 그룹 | 논리 OR 예시 // a-z 범위의 문자 string match = @"[a-z]"; // '강'으로 시작하고 '구'로 끝나는 문자 string match = @"^강\w*구$"; // 2자리 숫자 string match = @"\d{2}"; // 핸드폰 번호 ex) 000-0000-0000 string match = @"(.. 2022. 12. 28.
Unity & C# ~ InputField가 선택 되었을 때, 커서 위치 보통 InputField가 선택 되었을 때, 텍스트가 전체 선택된 상태입니다. 전체 선택된 focus를 커서를 처음 또는 중간, 마지막으로 옮기는 방법입니다. TMP_InputField inputField; // Start is called before the first frame update void Start() { inputField = GetComponent(); inputField.onSelect.AddListener(x => { #if inputField.selectionAnchorPosition = 0;// 커서의 처음 위치 inputField.selectionFocusPosition = 0;// 커서의 마지막 위치 #esleif inputField.selectionAnchorPosition.. 2022. 11. 17.
Unity & C# ~ Tab 키를 눌러서 입력 필드 위치 변경 (public list 활용) Tab 키를 눌렀을 때 입력 필드 위치를 변경하는 방법 중에서 특정 오브젝트만을 list에 담아 적용하는 방법입니다. using System.Collections.Generic; using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI; public class Tabkey : MonoBehaviour { [SerializeField] private List list; private int currentSelectedNum = 0; private void Update() { if (Input.GetKeyDown(KeyCode.Tab)) { //event system에서 선택한 오브젝트가 있는지를 검사 if(EventSystem.curr.. 2022. 11. 17.
Unity & C# ~ text를 수정했을 때, ContentSizeFitter가 사이즈 조정을 안 했을 때 tmp_text나 text ui 등을 수정했을 때, 자기 자신의 component 이외에 상위 부모 component에 추가한 contentsizefitter에 의해서 transform size가 새로고침이 되지 않는 현상이 있습니다. 다른 블러거 분들이나 forum에서는 이를 contentsizefitter 버그가 아닌가로 보고 있는 듯 하고, contentsizefitter를 refresh 해주면 현상이 해결되는 것을 확인했습니다. 저의 경우는 상위 부모 2계층에 contentsizefitter가 자식까지 총 3개가 연이어 들어간 구조였기에 다음과 같은 코드를 적용했습니다. - 구조 부모1-component에 contentsizefitter add ㄴ부모2-component에 contentsizefi.. 2022. 11. 7.
Unity & C# ~ 문자열에서 여러 요소 바꾸기 String.Replace("&", "and").Replace(",", "").Replace(" ", " ") .Replace(" ", "-").Replace("'", "").Replace(".", "") .Replace("eacute;", "é").ToLower(); // 다른 방식으로 변환 StringBuilder sb = new StringBuilder(string); sb.Replace(",", ""); sb.Replace(" ", ""); sb.Replace("'", ""); sb.Replace(".", ""); var text = sb.ToString(); Debug.Log(text); 2022. 10. 24.
Unity & C# ~ 문자열에서 단어 검색 방법 string factMessage = "Extension methods have all the capabilities of regular static methods."; // Write the string and include the quotation marks. Console.WriteLine($"\"{factMessage}\""); // Simple comparisons are always case sensitive! // 문자열에 검색할 단어가 있는지 확인 bool containsSearchResult = factMessage.Contains("extension"); Console.WriteLine($"Contains \"extension\"? {containsSearchResult}"); // F.. 2022. 10. 24.
SMALL