[23.10.15] TIL

yyยท2023๋…„ 10์›” 15์ผ

๊ฐœ๋ฐœ์ผ์ง€

๋ชฉ๋ก ๋ณด๊ธฐ
2/122

๐Ÿ“˜render_template()์™€ redirect() ์ฐจ์ด

render_template()

ํ…œํ”Œ๋ฆฟ์„ ๋ Œ๋”๋ง ํ•œ๋‹ค๋Š” ์˜๋ฏธ. (ํ…œํ”Œ๋ฆฟ = HTML ํŒŒ์ผ)
์›นํŽ˜์ด์ง€๋Š” HTML ์ฝ”๋“œ๊ฐ€ ์›น๋ธŒ๋ผ์šฐ์ €์— ์˜ํ•ด์„œ ๋ Œ๋”๋ง ๋œ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๋Š”๋ฐ ์ด๋ฅผ ์š”์ฒญํ•˜๋Š” ํ•จ์ˆ˜.


redirect()

ํ˜„์žฌ ์š”์ฒญ๋œ ์—ฐ๊ฒฐ์„ ํŠน์ • ์ฃผ์†Œ๋กœ ์žฌ์—ฐ๊ฒฐ.

์˜ˆ์‹œ
/a ๋ผ๋Š” ์š”์ฒญ -> redirect('b.html) ํ•˜๋ฉด /b.html๋กœ ์ ‘์†.
๋ณดํ†ต /a ์ฃผ์†Œ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ณผ์ •๋งŒ ๊ฑฐ์น˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ b ์—์„œ ๋ณด์—ฌ์ฃผ๊ฑฐ๋‚˜ ํ• ๋•Œ ์‚ฌ์šฉ



๐Ÿ“˜flask, sqlite

  • html์—์„œ ์ž…๋ ฅ๊ฐ’ ๋ฐ›์•„์˜ค๊ธฐ
    1. (html ํŒŒ์ผ) ํƒœ๊ทธ ์†์„ฑ name="inputContent" ์œผ๋กœ ๋ฐ›์•„์˜ฌ ๋ฐ์ดํ„ฐ์— ์ด๋ฆ„์„ ๋ถ™์ž„.
    2. (python ํŒŒ์ผ) request.args.get("inputContent")๋กœ ์ž…๋ ฅํ•œ ๊ฐ’์„ ๋ฐ›์•„์˜จ๋‹ค.


๐Ÿ“˜JavaScript

1. ์ •๊ทœํ‘œํ˜„์‹ ์ •์˜

ํŠน์ • ๋ฌธ์ž ์กฐํ•ฉ ์ฐพ๊ธฐํŒจํ„ด in ๋ฌธ์ž์—ด
SQL์˜ LIKE ํŒจํ„ด ๊ฐ™์€ ์—ญํ• ์„ ํ•œ๋‹ค.

2. ์ •๊ทœํ‘œํ˜„์‹ ๋งŒ๋“œ๋Š” ๋ฒ•

1. /๋กœ ํŒจํ„ด ๊ฐ์‹ธ ์‚ฌ์šฉ

const re = /ab+c/;

2. ํŒจํ„ด ์žฌ์‚ฌ์šฉ์‹œ ์ƒ์ˆ˜ํ™” ์‹œ์ผœ ์‚ฌ์šฉ
const re = new RegExp("ab+c");
=> ์ƒ์„ฑ์ž ํ•จ์ˆ˜ ์‚ฌ์šฉํ•˜์—ฌ ์ •๊ทœํ‘œํ˜„์‹์ด ๋Ÿฐํƒ€์ž„์— ์ปดํŒŒ์ผ์ด ๋จ. (๋ญ”๋ง์ž„?)
๋Ÿฐํƒ€์ž„: ํŠน์ •์–ธ์–ด๋กœ ๋งŒ๋“  ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ

3. ์ •๊ทœํ‘œํ˜„์‹ ํŒจํ„ด ์ž‘์„ฑ๋ฒ•

1. ๋‹จ์ˆœํŒจํ„ด
"Hello abc"์™€ "slabcraft"์—์„œ "abc" ์ฐพ๊ธฐ ๊ฐ™์€ ๋‹จ์ˆœ


2. ๋ณต์žกํŒจํ„ด(ํŠน์ˆ˜๋ฌธ์ž ์‚ฌ์šฉ)
"cbbabbbbcdebc" ์—์„œ "a"๋‹ค์Œ 0๊ฐœ์ด์ƒ์˜ "b"๊ฐ€ ์˜ค๊ณ  ๋งˆ์ง€๋ง‰์œผ๋กœ "c"๊ฐ€ ์˜ค๋Š” ํŒจํ„ด๊ณผ ์ผ์น˜ํ•˜๋Š” ๊ฒฝ์šฐ => /ab*c/์™€ ํŒจํ„ด์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. => "abbbbc"์™€ ๊ฐ™์€ ๊ฒฐ๊ณผ๊ฐ’ ๋ฐ˜ํ™˜.

3-1. ์ •๊ทœํ‘œํ˜„์‹ ํŒจํ„ด ไธญ ํŠน์ˆ˜๋ฌธ์ž

1. Assertion(์–ด์„œ์…˜) : ๋ฌธ์žฅ, ๋‹จ์–ด์˜ ์‹œ์ž‘๊ณผ ๋, ํŠน์ • ๋ฌธ์ž ์ฐพ๋Š” ๋ฐฉ๋ฒ•(์ „๋ฐฉํƒ์ƒ‰, ํ›„๋ฐฉํƒ์ƒ‰, ์กฐ๊ฑดํ‘œํ˜„์‹ ๋“ฑ)
2. character classes(๋ฌธ์ž ํด๋ž˜์Šค):๋ฌธ์ž์™€ ์ˆซ์ž์ฒ˜๋Ÿผ ๋‹ค๋ฅธ ์œ ํ˜•์˜ ๋ฌธ์ž ๊ตฌ๋ถ„
3. groups and backreferences: ํ‘œํ˜„ ๋ฌธ์ž์˜ ๊ทธ๋ฃน๊ณผ ๋ฒ”์œ„๋ฅผ ๋‚˜ํƒ€๋ƒ„
4. quantifiers: ์ผ์น˜ํ•  ๋ฌธ์ž๋‚˜ ํ‘œํ˜„์ด ๋ฐ˜๋ณต๋˜์–ด์•ผํ•  ํšŸ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋ƒ„
5. unicode character class excape:/p{...},/P{...}:๋Œ€/์†Œ๋ฌธ์ž, ์ˆ˜ํ•™๊ธฐํ˜ธ, ๋ฌธ์žฅ ๋ถ€ํ˜ธ์ฒ˜๋Ÿผ ์œ ๋‹ˆ์ฝ”๋“œ ๋ฌธ์ž ์†์„ฑ์— ๋”ฐ๋ผ ๋ฌธ์ž ๊ตฌ๋ถ„

1. Assertion(์–ด์„œ์…˜)

๊ธฐ ํ˜ธ์˜ ๋ฏธ์˜ˆ
^์‹œ์ž‘ ๋ถ€๋ถ„์—์„œ ์ผ์น˜ ์ฐพ๊ธฐ/^A => "an A" (์ผ์น˜X), "An A"(์ผ์น˜)
$๋ ๋ถ€๋ถ„์—์„œ ์ผ์น˜ ์ฐพ๊ธฐ/t$ => "eater"(์ผ์น˜X), "eat"(์ผ์น˜)
/b๋‹จ์–ด ๊ฒฝ๊ณ„์™€ ์ผ์น˜/\bm/ => "moon"(m์ผ์น˜), /oo\b/ =>"moon"(oo์ผ์น˜X), /oon\b/ => "moon"(oon์ผ์น˜)
/B๋ฌธ์ž์—ด์—์„œ ์ผ์น˜/\Bon/ =>"at noon"(on์ผ์น˜), /ye\B/=>"possibly yesterday"(ye์ผ์น˜)
profile
์‹œ๊ฐ„์ด ๊ฑธ๋ฆด ๋ฟ ๋‚ด๊ฐ€ ๋ชปํ•  ๊ฑด ์—†๋‹ค.

0๊ฐœ์˜ ๋Œ“๊ธ€