연구동향 서칭 중 발견한 함수 사용방법 기록
(Caltech의 XXX Lab에 있는 Publish 목록을 복붙한 결과물이다.)
목표 : 텍스트에서 논문제목 / 저자 / 저널 구분
대상 Text :
Control barrier functions: Theory and applications. Ames, A. D; Coogan, S.; Egerstedt, M.; Notomista, G.; Sreenath, K.; and Tabuada, P. In 2019 18th European Control Conference (ECC), pages 3420–3431, 2019. IEEE
|
Hierarchical and Safe Motion Control for Cooperative Locomotion of Robotic Guide Dogs and Humans: A Hybrid Systems Approach. Hamed, K. A.; Kamidi, V. R; Ma, W.; Leonessa, A.; and Ames, A. D IEEE Robotics and Automation Letters, 5(1): 56–63. 2019.
|
Model-Based Adaptive Control of Transfemoral Prostheses: Theory, Simulation, and Experiments. Azimi, V.; Shu, T.; Zhao, H.; Gehlhar, R.; Simon, D.; and Ames, A. D IEEE Transactions on Systems, Man, and Cybernetics: Systems. 2019.
|
Dynamic walking with compliance on a cassie bipedal robot. Reher, J.; Ma, W.; and Ames, A. D In 2019 18th European Control Conference (ECC), pages 2589–2595, 2019. IEEE
|
구현 :
1. 논문제목 구분 : 제목의 끝에는 "."가 있다.
a. 첫 번째 '.' 찾기
FIND(find_text, within_text, [start_num])
: find_text를 within_text에서 위치를 찾되 (within_text의 start_num번째 문자열부터 찾는다)
=FIND(".", A1)
b. 찾은 위치까지 Text 출력하기 :
LEFT(text, [num_char])
: text 왼쪽에서부터 num_char개의 문자열 출력
b의 결과
=LEFT(A1, FIND(".", A1))
2. 저자명 출력 : 저자 시작/마지막 위치 확인
a. 저자 시작위치 찾기 : 논문제목 이후에 시작한다.
= FIND(".", A1) + 2
b. 저자 마지막 위치 찾기 : 저자명 사이에는 ";"로 구분한다 + 맨 마지막 저자는 "."으로 끝난다.
b-1. 맨 뒤에 있는 ";"를 찾는다 : ";"의 개수를 세고 -> 위치를 찾는다
LEN(text)
: text의 문자열 길이
SUBSTITUTE(text, old text, new text, [instance_num])
: text에서 old text를 new text로 치환하되, (instance_num번째를 치환한다)
= LEN(A1) - LEN( SUBSTITUTE(A1,";","" )
(모든 ";"를 삭제하면 줄어든 길이만큼 ";"가 있음)
b-2. 맨 뒤의 ";"를 "|"로 치환한다.
= SUBSTITUTE(A1, ";", "|", LEN(A1) - LEN(SUBSTITUTE(A1,";","")))
b-3. 치환된 "|"의 위치를 찾는다
= FIND("|", SUBSTITUTE(A1, ";", "|", LEN(A1) - LEN(SUBSTITUTE(A1,";",""))))
b-4. 치환된 "|"의 위치부터 "."을 찾는다.
= FIND(".", A1, FIND("|", SUBSTITUTE(A1, ";", "|", LEN(A1) - LEN(SUBSTITUTE(A1,";","")))))
b-5. 찾은 위치에서 예외를 맞춰준다
= FIND(".", A1, FIND("|", SUBSTITUTE(A1, ";", "|", LEN(A1) - LEN(SUBSTITUTE(A1,";",""))))) + 2
c. 이름을 출력한다.
MID(text, start_num, num_char)
: text에서 start_num번째 문자열부터 num_char개수만큼의 문자열을 출력한다
- text : A1
- start_num : 2-a) 참고
FIND(".", A1) + 2
- num_char : b-5 참고
FIND(".", A1, FIND("|", SUBSTITUTE(A1, ";", "|", LEN(A1) - LEN(SUBSTITUTE(A1,";",""))))) + 2
- FIND(".",A2)+2
b의 결과
=MID(A2, FIND(".",A2)+2,
FIND(".",SUBSTITUTE( A2,";","|",LEN(A2)-LEN(SUBSTITUTE(A2,";",""))),
FIND("|",SUBSTITUTE(A2,";","|",LEN(A2)-LEN(SUBSTITUTE(A2,";","")))))-FIND(".",A2)+2)
3. 나머지 출력 : 오른쪽에서부터 저자의 마지막 위치 이후를 출력
a. 저자의 마지막 위치
FIND(".",SUBSTITUTE( A2,";","|",LEN(A2)-LEN(SUBSTITUTE(A2,";","")))
b. 오른쪽에서 개수 구분
LEN(A2) - FIND(".",SUBSTITUTE( A2,";","|",LEN(A2)-LEN(SUBSTITUTE(A2,";","")))
c. 출력
RIGHT(text, [num_char])
: text 오른쪽에서부터 num_char개의 문자열 출력
text : A1
[num_char] : 전체길이 - 저자명의 마지막 위치(2의 c 참고)
c의 결과 :
=RIGHT(A1,
LEN(A1)-FIND(".",A1,FIND("|",SUBSTITUTE(A2,";","|",LEN(A2)-LEN(SUBSTITUTE(A2,";","")))))-1)
결과는 아래와 같다
제목
|
저자
|
학회/연도 등
|
Control barrier functions: Theory and applications
|
Ames, A. D; Coogan, S.; Egerstedt, M.; Notomista, G.; Sreenath, K.; and Tabuada, P. In
|
In 2019 18th European Control Conference (ECC), pages 3420–3431, 2019. IEEE
|
Hierarchical and Safe Motion Control for Cooperative Locomotion of Robotic Guide Dogs and Humans: A Hybrid Systems Approach
|
Hamed, K. A.; Kamidi, V. R; Ma, W.; Leonessa, A.; and Ames, A. D
|
D IEEE Robotics and Automation Letters, 5(1): 56–63. 2019.
|
Model-Based Adaptive Control of Transfemoral Prostheses: Theory, Simulation, and Experiments
|
Azimi, V.; Shu, T.; Zhao, H.; Gehlhar, R.; Simon, D.; and Ames, A. D
|
D IEEE Transactions on Systems, Man, and Cybernetics: Systems. 2019.
|
Dynamic walking with compliance on a cassie bipedal robot
|
Reher, J.; Ma, W.; and Ames, A. D
|
D In 2019 18th European Control Conference (ECC), pages 2589–2595, 2019. IEEE
|
제목, 주저자, 연도 및 학회를 구분할 목적이라 이정도면 대충 충분하다.
더 자세히 구분할 수 있을지도 의문이고, 필요가 없어서 여기까지만 하려 한다.
끝.
(복잡하다. 나중에 정리할래..)
'리뷰 > 코딩' 카테고리의 다른 글
고정밀 온습도 센서 DHT22(AM2302) 신뢰성, 정확성 (feat. 다이소 온습도계) (3) | 2022.05.05 |
---|---|
[아두이노 병아리 부화기] 부화기 요구조건, 보드 및 센서 구매 (0) | 2022.03.14 |
pyinstaller 용량 줄이는 방법 (230MB->36MB) (0) | 2022.02.09 |
파이썬을 이용한 비트코인 자동매매(유부장, 조대표) 책 후기 (0) | 2022.02.09 |
댓글