글자입력을 100자로 제한 하는경우에 띄어쓰기 기준으로 문장의 끝부분 부터 100글자가 안넘을때 까지 지워하는경우가 발생할때 arrValue = strVale.split(" "c) 로 자르기는 진행 했지만 마지막 index 배열을 제거하는 함수를 모르겠습니다. .remove 도 작동하지 않아요 이럴때는 어떻게 하는게 좋을까요?
굳이 Array로 처리하지 않아도 101번째 글자가 " “가 아닌 경우에는 SubString으로 100개까지 String을 자르고, 여기서 strValue.Substring(0, strValue.LastIndexOf(” "))로 자르면 되지 않을까요 ? (사용하시는 상황을 100% 이해하지는 못해서 정답이 아닐 수도 있겠지만…)
아래처럼 한번 해보세요
처리해야할 문자가 str 이란 변수라고 가정하고
잘라야될 길이를 len 이라고 하면
lastIndex를 해당 길이만큼 필요한 문자의 위치라고 한다면
아래의 결과 같이 됩니다.
해당 인덱스를 가지고 잘라내어 사용하면 될겁니다.
코드 설명은 생략합니다.
str = “123 4567 8 9a bcdefg ef”
len = 15
lastIndex = 찾을 인덱스 위치
[이부분이중요]
lastIndex = str.Select(Function(c,i) (c,i)).
Where(Function(t) t.Item1 = " " And t.Item2 <= len).
Select(Function(t) t.Item2).Reverse.Take(1)(0)
[결과]
lastIndex => 13
str.Substring(0,lastIndex) => “123 4567 8 9a”