์‹œ์ž‘๋ถ€ํ„ฐ ๋ง‰ํž˜

์ผ๋‹จ ๊ธฐ๊ณ„์ ์œผ๋กœ ๊ธ€ ์˜ฌ๋ผ์˜จ๊ฑฐ ๊ณ ๋Œ€๋กœย ๋ณต๋ถ™ํ•ด์„œ


string Input = "๋‚ด์šฉ";

var value = this.GetType().GetField(Input).GetValue(this);

intext = some_script.GetInastance ().(string)value[0];


์ด๋Ÿฐ ์‹์œผ๋กœ ์งฐ๋”๋‹ˆ ์•ˆ๋จ

์‚ฌ์‹ค ๋‹น์—ฐํžˆ ์•ˆ๋  ์ค„ ์˜ˆ์ƒํ–ˆ์Œ. ์™œ๋ƒ๋ฉด ๋‚œ ์ € ๋‚ด์šฉ์„ ํ•˜๋‚˜๋„ ์ดํ•ดํ•˜์ง€ ๋ชปํ–ˆ์œผ๋‹ˆ๊นŒ


์ผ๋‹จ GetType, GetField, GetValue๊ฐ€ ๋ญ”์ง€ ๋ชจ๋ฅด๊ฒ ์Œ.

๊ฒ€์ƒ‰ํ•ด๋ณด๋‹ˆ "ํ•ด๋‹น ํƒ€์ž…์˜ ํƒ€์ž…/ํ•„๋“œ/๊ฐ’์„ ๋ถˆ๋Ÿฌ์˜จ๋‹ค" ๋ผ๊ณ  ํ•˜๋Š”๋ฐ ์˜๋ฏธ๊ฐ€ ๋งž๊ธด ๋งž์ง€๋งŒ ์„ค๋ช…์ด ๋„ˆ๋ฌด ๋ถ€์กฑํ•œ ๊ฑฐ ์•„๋‹ˆ๋ƒ ํ๊ธ“ใ„ฑใ…Ž

๊ธฐ์ดˆ์ง€์‹์—†์ด ๋งจ๋•…์—์„œ ์‹œ์ž‘ํ•˜๋‹ˆ๊นŒ ์ „๋ฌธ์šฉ์–ด๋ฅผ ๋ชจ๋ฅด๊ฒ ๋‹ค.


์ผ๋‹จ (string)value ๋ผ๊ณ  ๋„ฃ์€๊ฑด ์˜ฌ๋ผ์˜จ ๊ธ€ ๋ณธ๋ฌธ์— (float)value ์˜€๊ธฐ ๋•Œ๋ฌธ์— ์›๋ž˜ ์•ž์— ๋ถ™์—ฌ์•ผํ•˜๋‚˜? ํ•ด์„œ ๋ถ™์—ฌ๋ดค์Œ. ๊ทธ๋žฌ๋”๋‹ˆ ์•Œ ์ˆ˜ ์—†๋Š” '(' ๋ฌธ์ž๊ฐ€ ์žˆ๋‹ค๋ฉฐ ์˜ค๋ฅ˜.

๊ทธ๋ž˜์„œ string์„ ๋นผ๊ณ  value๋งŒ ๋„ฃ์—ˆ๋”๋‹ˆ value์˜ ๋‚ด์šฉ์ด ์•„๋‹ˆ๋ผ, value๋ผ๋Š” ๋ฌธ์ž ๊ทธ ์ž์ฒด๋กœ ๋ฐ›์•„๋“ค์—ฌ์„œ '๊ทธ๋Ÿฐ ๊ฐ’์ด some_script'์— ์—†๋‹ค๋ฉฐ ์˜ค๋ฅ˜.

๋Œ“๊ธ€์— [test],["test"] ์ด๋Ÿฐ ์‹์˜ ๊ธ€์ด ๋ณด์—ฌ์„œ ๋‘˜ ๋‹ค ๋”ฐ๋ผํ–ˆ๋”๋‹ˆ ๋˜ ์•Œ ์ˆ˜ ์—†๋Š”ย '[' ๋ฌธ์ž๊ฐ€ ์žˆ๋‹ค๋ฉฐ ์˜ค๋ฅ˜.


๊ทธ๋ž˜์„œ ์ถ”๋ก ํ•ด๋ณธ๊ฑด "์ €๋ ‡๊ฒŒ ๊ธฐ๋Šฅ์ฝ”๋“œ ๋‚ด์— ๋“ค์–ด๊ฐˆ ๋•Œ๋Š” ๋ญ”๊ฐ€ ๋‹ค๋ฅธ ์ˆ˜๋ฅผ ์จ์•ผ ํ•˜๋‚˜?" ์ธ๋ฐ..

์ด๊ฒƒ๋•Œ๋ฌธ์— ๋ฆฌํ”Œ๋ ‰์…˜์— ๋Œ€ํ•ด์„œ ๊ฒ€์ƒ‰ํ•ด๋ดค๋Š”๋ฐ ๋Œ€๋ถ€๋ถ„ ์›๋ก ์ ์ธ ๋ฌธ์ œ๊ณ  ๋‚ด๊ฐ€ ํ™œ์šฉํ•˜๋ ค๋Š” ์‹์˜ ํ•ด๊ฒฐ์€ ๋ณด์ด์ง€ ์•Š์Œ...


์Œ ์ด๊ฒƒ๋„ ๊ณ„์† ์ฐพ์•„๋ด์•ผ๊ฒ ๋‹ค.