RegEx for Vim

Find

  • /<word>: ์ปค์„œ๊ฐ€ ์œ„์น˜ํ•œ ๊ณณ ์ดํ›„์— ์กด์žฌํ•˜๋Š” ๋‹จ์–ด๋ฅผ ์ฐพ์Šต๋‹ˆ๋‹ค.
  • ?<word>: ์ปค์„œ๊ฐ€ ์œ„์น˜ํ•œ ๊ณณ ์ด์ „์— ์กด์žฌํ•˜๋Š” ๋‹จ์–ด๋ฅผ ์ฐพ์Šต๋‹ˆ๋‹ค.
  • n: ์ด์ „ ๋‹จ์–ด๋ฅผ ์ฐพ์€ ๊ฒฝ์šฐ ๊ทธ ์ด์ „์œผ๋กœ, ๋‹ค์Œ ๋‹จ์–ด๋ฅผ ์ฐพ์€ ๊ฒฝ์šฐ ๊ทธ ๋‹ค์Œ์œผ๋กœ ๋‹จ์–ด๋ฅผ ์ฐพ์Šต๋‹ˆ๋‹ค.
  • N: n๊ณผ ๋ฐ˜๋Œ€ ๋ฐฉํ–ฅ์œผ๋กœ ๋‹ค์Œ ๋‹จ์–ด๋ฅผ ์ฐพ์Šต๋‹ˆ๋‹ค.
  • *: ์ปค์„œ๊ฐ€ ์œ„์น˜ํ•œ ๊ณณ์˜ ๋‹จ์–ด๋ฅผ / ๋ช…๋ น์–ด๋กœ ์ฐพ์Šต๋‹ˆ๋‹ค.
  • #: ์ปค์„œ๊ฐ€ ์œ„์น˜ํ•œ ๊ณณ์˜ ๋‹จ์–ด๋ฅผ ? ๋ช…๋ น์–ด๋กœ ์ฐพ์Šต๋‹ˆ๋‹ค.

#๊ณผ *์€ ํ‚ค๋ณด๋“œ์—์„œ 5, 6์„ ๊ธฐ์ค€์œผ๋กœ ๋Œ€์นญ์ธ ์ž๋ฆฌ์— ์žˆ์Šต๋‹ˆ๋‹ค.

Substitute

:[line option]s/<before>/<after>/[option] : before์—์„œ after๋กœ ์ฐพ์•„ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.

[line option]

  • line option์ด ์—†๋Š” ๊ฒฝ์šฐ ์ปค์„œ๊ฐ€ ์œ„์น˜ํ•œ ์ค„์— ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
  • start_num,end_num: ์ฃผ์–ด์ง„ ๋ฒˆํ˜ธ์˜ ์ค„์„ ํฌํ•จํ•œ ๊ทธ ์‚ฌ์ด ์ค„
  • `<,`>: Visual ๋ชจ๋“œ์—์„œ ๋ธ”๋ก๋œ ์˜์—ญ์˜ ์ค„
  • .,$: ํ˜„์žฌ ์œ„์น˜์—์„œ ๋๊นŒ์ง€
  • .,+n: ํ˜„์žฌ ์œ„์น˜์—์„œ n๋ฒˆ์งธ ๋‹ค์Œ ์ค„๊นŒ์ง€

[option]

  • g: ์ค„ ์ „์ฒด์—์„œ ์ฐพ์•„ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์€ ์ค„์—์„œ ์ฐพ์€ ์ฒซ๋ฒˆ์งธ๋งŒ ๋ฐ”๊พธ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.(global)
  • c: ์ฐพ์€ ํ›„ ๋ฐ”๊ฟ€ ๊ฒƒ์ธ์ง€ ๋ฌป์Šต๋‹ˆ๋‹ค.(confirmation)
  • i: ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๋ฌด์‹œํ•˜๊ณ  ์ฐพ์Šต๋‹ˆ๋‹ค. (ignoring case)

RegEx

  • . : ์ž„์˜์˜ ํ•œ ๊ธ€์ž
  • ^x : ๋ฌธ์žฅ์ด x๋กœ ์‹œ์ž‘
  • x$ : ๋ฌธ์žฅ์ด x๋กœ ๋
  • x* : x๊ฐ€ 0 ๋ฒˆ ์ด์ƒ ๋ฐ˜๋ณต
  • x\+ : x๊ฐ€ 1 ๋ฒˆ ์ด์ƒ ๋ฐ˜๋ณต
  • x\{n,m} : x๊ฐ€ n๋ฒˆ ์ด์ƒ m๋ฒˆ ์ดํ•˜
    • x\{n} : x๊ฐ€ n๋ฒˆ ๋ฐ˜๋ณต
    • x\{n,} : x๊ฐ€ n๋ฒˆ ์ด์ƒ ๋ฐ˜๋ณต (๊ฐ€๋Šฅํ•œ ๋งŽ์ด)
    • x\{,m} : m๋ฒˆ ์ดํ•˜ ๋ฐ˜๋ณต (๊ฐ€๋Šฅํ•œ ๋งŽ์ด)
    • x\{-n,m} : n๋ฒˆ ์ด์ƒ m๋ฒˆ ์ดํ•˜ (๊ฐ€๋Šฅํ•œ ์ ๊ฒŒ)
    • x\{-n,} : n๋ฒˆ ์ด์ƒ (๊ฐ€๋Šฅํ•œ ์ ๊ฒŒ)
    • x\{-,m} : m๋ฒˆ ์ดํ•˜ (๊ฐ€๋Šฅํ•œ ์ ๊ฒŒ)
    • x\{-} : 0๋ฒˆ ์ด์ƒ (๊ฐ€๋Šฅํ•œ ์ ๊ฒŒ)
  • x\? : x๊ฐ€ ์žˆ์–ด๋„ ๋˜๊ณ  ์—†์–ด๋„ ๋จ
  • x\|y : x ๋˜๋Š” y
  • \(\) : ๊ทธ๋ฃน
  • \ : escape
  • [ ] : ๋ฌธ์ž ํด๋ž˜์Šค
    • [a-z] : a ~ z ์ค‘ ํ•œ ๊ธ€์ž
    • [A-Z] : A ~ Z ์ค‘ ํ•œ ๊ธ€์ž
    • [0-9] : 0 ~ 9 ์ค‘ ํ•œ ์ˆซ์ž
    • [ใ„ฑ-ใ…Ž|ใ…-ใ…ฃ|๊ฐ€-ํžฃ] : ํ•œ๊ธ€ ์ค‘ ํ•œ ๊ธ€์ž
  • \0, & : ์ฐพ์€ ๋ฌธ์ž ์ „์ฒด
  • \n : n ๋ฒˆ์งธ ๊ทธ๋ฃน(\(\))

Examples

  • :%s/^\* / \* /g : *๋กœ ์‹œ์ž‘ํ•˜๋Š” ์ค„ 2 ์นธ ๋“ค์—ฌ์“ฐ๊ธฐ
  • :%s/<code \([a-z|A-Z]*\)>/```\1/g: <code xxxx> -> ```xxxx
  • :%s/<a href="\(.\{-}\)" \?.\{-}>.\{-}<\/a>/\1/g : <a href="web">web</a>->web
Last updated on