Lv.0 등록일: 2017-07-192017-07-19T00:24:20+09:00 2017-07-19T00:24:20+09:00카테고리: AutoCAD & CADian 문자열 관련 리습 질문드립니다. 정말 필요한 리습인대 제 머리로는 도저히 안되서 염치없지만 부탁드립니다. 왼쪽에 A_B*C=D% 문자열을 선택하여 오른쪽 처럼 배열을 하려 합니다.리습으로 가능은한가요? 공유 Facebook 관련 있는 질문들 insert 삽입할때 레이어도 같이 변경가능할까요? 캐드 파일을 PDF로 변환 할 때 문제점 도와주세요 ㅠ 질문오토캐드 라인타입이 너무 많은데 어떻게 정리하나요.. 질문오토캐드 라인타입이 너무 많은데 어떻게 정리하나요.. 3 답변 작성 순 최신 순 공감 순 수야12 Lv.21 2017-07-19T12:19:13+09:00답변 등록 답변 등록 일시 2017-07-19 12:19 pm 앞뒤 다 짜르고 결론만 말한다면 가능합니다 리습으로 짜려면 뭔가 명확한 조건이 있어야 하는데 올리신 사진에서는 조건을 발견 할수가 없네요 abcd 인데 결과물은 abd [Deleted User] 2017-07-19T16:20:51+09:00답변 등록 답변 등록 일시 2017-07-19 4:20 pm 원하는 결과 값이 A,B,D 입니다. A_B*C=D% 에서 필요한 결과는 1:A A의 조건은 _ 앞에 위치하는 문자2:B B의 조건은 _ 와 * 사이에 위치하는 문자3:D D의 조건은 = 과 % 사이에 위치하는 문자 입니다. ( C는 결과값이 필요가 없습니다. ) 수야12 Lv.21 2017-07-21T18:21:25+09:00답변 등록 답변 등록 일시 2017-07-21 6:21 pm (defun c:ff(/ ks_MakeText txh e p1 str pos i a) (defun ks_MakeText (p str txh) (entmake (list (cons 0 “TEXT”) (cons 1 str) (cons 10 p) (cons 11 p) (cons 40 txh) (cons 50 0.0) (cons 72 0) (cons 73 1) ) ) ) (setq txh(getvar ‘textsize)) (setq e(car(entsel “nChoose text:”))) (setq p1(getpoint “nPick text point:”)) (setq txL ‘(“_” “*” “=” “%”)) (setq str(cdr(assoc 1(entget e)))) (setq i 1) (mapcar ‘(lambda (a) (setq pos (vl-string-position (ascii a)str)) (cond ((= i 1) (setq a(strcat (itoa i) “:”(substr str 1 pos))) (setq str(substr str (+ 1 pos))) (ks_MakeText p1 a txh) (setq i(1+ i)) ) ((= i 3) (setq str(substr str (+ 1 pos)))(setq i(1- i))) (t (setq a(strcat (itoa i) “:”(substr str 2 (1- pos)))) (setq str(substr str (+ 1 pos))) (setq p1(list (car p1)(-(cadr p1)(* 1.5 txh)))) (ks_MakeText p1 a txh) (setq i(1+ i)) ) ) ) txL ) (princ) ) (vl-load-com)
앞뒤 다 짜르고 결론만 말한다면 가능합니다
원하는 결과 값이 A,B,D 입니다.
A_B*C=D% 에서
필요한 결과는
1:A A의 조건은 _ 앞에 위치하는 문자
2:B B의 조건은 _ 와 * 사이에 위치하는 문자
3:D D의 조건은 = 과 % 사이에 위치하는 문자
입니다. ( C는 결과값이 필요가 없습니다. )