ืืืืฃ ืคืจืืืืื, ืืืืืืกื 2, ืื ืืขืืืื ื ืคืื re2c, ืึท ืคืจืื ืืขื ืขืจืึทืืึธืจ ืคืื ืืขืงืกืืงืึทื ืึทื ืึทืืืืขืจื ืคึฟืึทืจ ืื C ืืื C ++ ืฉืคึผืจืึทืื, ืืื ืืืคืจืืื. Re2c ืืื ืืขืืืขื ืืขืฉืจืืื ืืื 1993 ืืืจื Peter Bamboulis ืืื ืึทื ืืงืกืคึผืขืจืืขื ืึทื ืืขื ืขืจืึทืืึธืจ ืคืื ืืืืขืจ ืฉื ืขื ืืขืงืกืืงืึทื ืึทื ืึทืืืืขืจื, ืืื ืืขืจืฉืืืื ืคืื ืื ืืขืจืข ืืขื ืขืจืึทืืึธืจืก ืืืจื ืื ืืืืงืืึทื ืคืื ืื ืืืฉืขื ืขืจืืืืึทื ืงืึธื ืืื ืึท ืึทื ืืืืฉืืึทืื ืคืืขืงืกืึทืืึทื ืืึทื ืืฆืขืจ ืฆืืืื ื ืืืึธืก ืึทืืึทืื ืึทื ืึทืืืืขืจื ืฆื ืืืื ืืืืื ืืื ืืคืืฉืึทื ืืื ืขืืืขืืื ืืื ืึทื ืืืืืกืืื ื ืงืึธื ืืึทืืข. ืืื ื ืืขืืึธืื, ืื ืคึผืจืืืขืงื ืืื ืืขืืืขืืึธืคึผืขื ืืืจื ืื ืงืื ืืื ืืืื ืฆื ืืืื ืึท ืคึผืืึทืืคืึธืจืืข ืคึฟืึทืจ ืืงืกืคึผืขืจืึทืืึทื ืฅ ืืื ืคืึธืจืฉืื ื ืืื ืื ืคืขืื ืคืื ืคืึธืจืืึทื ืืจืึทืืึทืืืง ืืื ืขื ืืืขื ืฉืืึทื ืืืฉืื ืขื.
ืืืืคึผื ืื ืึธืืืืืืฉืึทื ื ืืื ืืืขืจืกืืข 1.2:
-
ืฆืืืขืืขืื ืึท ื ืืึทืข (ืกืืืคึผืืึทืคืืื) ืืืขื ืฆื ืงืึธื ืืจืึธืืืจื ืื ืกืืฃ ืคืื ืื ืึทืจืืึทื ืฉืจืืึทื ืืึทืื
(ืขื ืืืืฉ "EOF ืืขืจืฉื").
ืคึฟืึทืจ ืืขื, ืื re2c:eof ืงืึทื ืคืืืืขืจืืืฉืึทื ืืื ืฆืืืขืืขืื,
ืึทืืึทืื ืืืจ ืฆื ืืืืกืงืืืึทืื ืืขื ืืืึธืงืืึทื ืืึทืจืึทืงืืขืจ,
ืืื ืึท ืกืคึผืขืฆืืขื $ ืืขืจืฉื ืึทื ืคืืจืขืก ืืืื ืื ืืขืงืกืขืจ
ืืฆืืื ืจืืืฉื ืื ืกืืฃ ืคืื ืื ืึทืจืืึทื ืฉืจืืึทื ืืึทืื.
ืืืกืืึธืจืืฉ, re2c ืืื ืึท ืืจืืจื ืคืื ืขืืืขืืข ืืืขืจืึทืคืึทืงืืืฉืึทื ืืขืืืึธืืก ืคึฟืึทืจ
ืกืืฃ ืคืื ืื ืคึผืืฅ ืืืขืจืืื ื ืืื ืืึทืืจืขื ืขืฆืื ื, ืขืคืขืงืืืืืงืืึทื ืืื ืคึผืึทืฉืืขืก
ืึทืคึผืืึทืงืืืฉืึทื ื. ืื ื ืืึทืข ืืืคึฟื ืืื ืืืืืื ื ืฆื ืคืึทืจืคึผืึธืฉืขืืขืจื ืฉืจืืืื ืงืึธื, ืืฉืขืช
ืืฉืขืช ืจืืขื ืขืคืขืงืืืื ืืื ืืืืืืื ืึธื ืืืขื ืืืขื. ืึทืืืข ืืืขืื
ื ืึธื ืึทืจืืขื ืืื ืงืขื ืืืื ืืืืืขืจ ืืื ืขืืืขืืข ืงืึทืกืขืก. -
ืฆืืืขืืขืื ืื ืคืืืืงืืื ืฆื ืึทืจืืึทื ื ืขืืขื ืคืื ืืจืืืกื ืืืง ืืขืงืขืก ื ืืฆื ืึท ืืืจืขืงืืืื
/*! ืึทืจืืึทื ื ืขืืขื: ืจืข2ืง "ืคืืืข.ืจืข" */ ืืื ืคืืืข.ืจืข
ืืึธืก ืืื ืืขืจ ื ืึธืืขื ืคืื ืื ืึทืจืืึทื ื ืขืืขื ืืขืงืข. Re2c ืงืืงื ืคึฟืึทืจ ืืขืงืขืก ืืื ืื ืึทืจืืึทื ืืขืจืขืื ื ืืขืงืข ืืืขืืืืืึทืืขืจ,
ืืื ืืขืืื ื ืืื ืืื ืืขืจ ืจืฉืืื ืคืื ืคึผืึทืืก ืกืคึผืขืกืืคืืขื ื ืืฆื ืื -I ืึธืคึผืฆืืข.
ืึทืจืืึทื ืืขืจืขืื ื ืืขืงืขืก ืงืขื ืึทืจืืึทื ื ืขืืขื ืื ืืขืจืข ืืขืงืขืก.
Re2c ืืื "ื ืึธืจืืึทื" ืืขืงืขืก ืืื ืื ืึทืจืืึทื ื ืขืืขื / ืืืขืืืืืึทืืขืจ
ืคึผืจืืืขืงื - ืขืก ืืื ืืขืจืืืึทืจื ืึทื ื ืืฆืืง ืืื ืืืขื ืึธื ืงืืืึทืื ืืึธืจื
ืจืขืืืืขืจ ืืืืกืืจืืงื, ืขืคึผืขืก ืืื ืื ื ืึธืจืืึทื ืืืืืืึธืืขืง.
ืืื ืืืฆื, ืืืืฃ ืืขืจ ืืงืฉื ืคืื ืืืขืจืก, ืืืื ืืขืงืข ืืื ืืขืคึฟืื ืืฆืืข ืคืื โโืืื ืืงืึธื ืงืึทืืขืืึธืจืืขืก ืืื ืฆืืืขืืขืื. -
ืฆืืืขืืขืื ืื ืคืืืืงืืื ืฆื ืืืฉืขื ืขืจืืื ืืขืืขืจ ืืขืงืขืก ืืื ืึทืจืืืืจืึทืจืืฉ
ืืื ืืึทืื ื ืืฆื ืื -t --ืืืคึผ-ืืขืืขืจ ืึธืคึผืฆืืขืก (ืึธืืขืจ ืฆืื ืขืืขื
ืงืึทื ืคืืืืขืจืืืฉืึทื ื) ืืื ื ืืึทืข ืืืืจืขืงืืืืื /*!header:re2c:on*/ ืืื
/*!header:re2c:off*/. ืืึธืก ืงืขื ืืืื ื ืืฆืืง ืืื ืงืึทืกืขืก ืืื
ืืืขื ืจืข2ืง ืืึทืจืฃ ืฆื ืืืฉืขื ืขืจืืื ืืื ืคืื ืืืขืจืืึทืืึทืื, ืกืืจืึทืงืืฉืขืจื ืืื ืืึทืงืจืึธืก,
ืืขืืืืื ื ืืื ืื ืืขืจืข ืืืืขืจืืขืฆืื ื ืื ืืฅ. -
ืจืข2ืง ืืืฆื ืคึฟืึทืจืฉืืืื UTF8 ืืืืขืจืึทื ืืื ืืึทืจืึทืงืืขืจ ืงืืืกื ืืื ืจืขืืืืขืจ ืืืืกืืจืืงื.
ืืืจื ืคืขืืืงืืึทื, re2c ืคึผืึทืจืกืขืก ืืืืกืืจืืงื ืืื "โx โy" ืืื.
ืกืืงืืืึทื ืก ืคืื 1-ืืืกื ASCII ืืืชืืืช ืข2 88 80 78 20 ืข2 88 83 79
(ืืขืงืก ืงืึธืืื), ืืื ืืืืขืจื ืืึธืื ืฆื ืึทื ืืืืืคื ืืื ืืงืึธื ืืืชืืืช ืืึทื ืืืึทืื:
"u2200x u2203y". ืืึธืก ืืื ืืืืขืจ ืืืืึทืงืืืขื ืืื ืืืืืขืจืืื ืคึฟืึทืจ ืคืืืข
ื ืืฆืขืจืก (ืืื ืขืืืืืึทื ืกื ืืืจื ืงืขืกืืืืขืจืืืง ืืฉืืง ืจืืคึผืึธืจืฅ). ืึทืืื ืืืฆื
re2c ืืื ืึทื --ืื ืคึผืื-ืขื ืงืึธืืื ื ืึธืคึผืฆืืข ,
ืืืึธืก ืึทืืึทืื ืืืจ ืฆื ืืืืฉื ืื ื ืึทืืืจ ืืื ืคึผืึทืจืก "โx โy" ืืื
ืงืกื ืืืงืก ืงืกื ืืืงืก ืงืกื ืืืงืก ืงืกื ืืืงืก ืงืกื ืืืงืก. -
ืจืข2ืง ืืืฆื ืึทืืึทืื ืื ื ืืฆื ืคืื ืจืขืืืืขืจ ืจืข2ืง ืืืึทืงืก ืืื -ืจ - ืจืืืืก ืืึธืืข.
ืืึธืก ืืื ืืึทืงืืืขื ืืืื ืื ืึทืจืืึทื ืฉืจืืึทื ืืขืงืข ืึผืืื ืคืืืข ืืืึทืงืก ืืื ืืืืื ืขืืืขืืข ืคืื โโืืื
ืืึทืจืฃ ืืืื ืจืืืื. -
ืืืฆื ืืืจ ืงืขื ืขื ืฉืืขืื ืื ืคึฟืึธืจืืึทื ืคืื ืืืึธืจื ืื ืื ืืื ืืขืืช ืึทืจืืืงืืขื
ื ืืฆื ืื ื ืืึทืข --location-format ืึธืคึผืฆืืข . GNU ืคึฟืึธืจืืึทื ืืื ืืขืืืืื
ืืื ืคืืืขื ืึทืืข: ืฉืืจื: ืืืึทื:, ืืื ืื MSVC ืคึฟืึธืจืืึทื ืืื ืคืืืขื ืึทืืข (ืฉืืจื, ืืืึทื).
ืืขืจ ืฉืืจืื ืงืขื ืืืื ื ืืฆืืง ืคึฟืึทืจ IDE ืืืืืืืขืจืก.
ื --verbose ืึธืคึผืฆืืข ืืื ืืืื ืฆืืืขืืขืื, ืืืึธืก ืคึผืจืื ืฅ ืึท ืงืืจืฅ ื ืฆืืื ืึธื ืืึธื ืืืื ืืขืจืึธืื. -
ืื "ืงืึทืืคึผืึทืืึทืืืืึทืื" ืืึธืืข ืืื ืคืืขืงืก ืืื ืืืคึผืจืืืื - ืขืืืขืืข ืคึผืึทืจืกืื ื ืขืจืจืึธืจืก ืืขื ืขื ืคืึทืจืคืขืกืืืงื ืืื
ืคืึทืืฉ ืึธืคึผืขืจืึทืืึธืจ ืคึผืจืืืืึทื ืก ืืื ืืขืืื ืงืึทืกืขืก.
ืืืกืืึธืจืืฉ, ืื -F --flex-support ืึธืคึผืฆืืข ืขืจืืืืื ืืืจ ืฆื ืฉืจืืึทืื ืงืึธื
ืืขืืืฉื ืืื ืคืืขืงืก ืกืืื ืืื ืจืข2ืง ืกืืื, ืืืึธืก ืืืื ืคึผืึทืจืกืื ื ืึท ืืืกื ืฉืืืขืจ.
ืคืืขืงืก ืงืึทืืคึผืึทืืึทืืืืึทืื ืืึธืืข ืืื ืจืึทืจืขืื ืืขื ืืฆื ืืื ื ืืึท ืงืึธื,
ืึธืืขืจ ืจืข2ืง ืืืื ืฆื ืฉืืืฆื ืขืก ืคึฟืึทืจ ืงืึทืคึผืืืขืจ ืงืึทืืคึผืึทืืึทืืืืึทืื. -
ืืขืจ ืืึทืจืึทืงืืขืจ ืงืืึทืก ืืืกืขืจ ืึธืคึผืขืจืึทืืึธืจ / ืืืฆื ืึทืคึผืืืื
ืืืืืขืจ ืืงืกืคึผืึทื ืืื ื ืื ืงืึธืืืจืื ื, ืืืึธืก ืึทืืึทืื ืขืก ืฆื ืืืื ืืขืืืืื ื ืืื ืึท ืืจืขืกืขืจืข ื ืืืขืจ ืคืื ืงืึทืกืขืก,
ืืืื ืึท ืืืขืจืืึทืืึทื ืืึทืจืึทืงืืขืจ ืืขื ื ืงืึธืืืจืื ื ืืื ืืขื ืืฆื (ืืืฉื UTF8). -
ืืขืจ ืจืขืืืืืึทื ืืขืงืข ืืื ืืืฆื ืึทืืึธืืืฉื ืืืฉืืคื: ืจืข2ืง ืงืจืืืืฅ ืึท ืฆืืึทืืืืืึทืืืง ืืขืงืข ืขืจืฉืืขืจ
ืืื ืฉืจืืืื ืืขืจ ืจืขืืืืืึทื ืืื ืขืก, ืืื ืืขืืึธืื ืจืื ืืืื ืื ืฆืืึทืืืืืึทืืืง ืืขืงืข ืฆื ืืขืจ ืจืขืืืืืึทื
ืืืื ืึธืคึผืขืจืึทืฆืืข. -
ืื ืืืงืืืขื ืืืฆืืข ืืื ืคืืจืขื ืืืงื ืืื ืืืืขืจืืขืฉืจืืื; ืืืืื ืืขืจ ื ืืฒื ืข ื ืฆืืืขืงืืืข ื ื ืฒืข
ืงืึทืคึผืืื ืืืขืื ืคืืืื ื ืื ืืึทืคืขืจ
ะธ ืืืขืื ืืืขืื ืฆื ืงืึธื ืืจืึธืืืจื ืคึฟืึทืจ ืื ืกืืฃ ืคืื ืึทืจืืึทื ืฉืจืืึทื ืืึทืื.
ืื ื ืืึทืข ืืึทืงืืืืขื ืืืืฉืึทื ืืื ืืขืืืืื ืืื ืื ืคืึธืจืขื
ืึท ืคืืืฉืืขื ืืืง ืืืื-ืืืึทื ืืึทื ืืึทื
ืืื ืืืืฉืคืืื (ืื ืืขืืืข ืืงืืจืื ืืขื ืขื ืจืขื ืืขืจื ืืื ืื ืืึทื ืคึผืึทืืข ืืื ืืื ืื ืึธื ืืืื ืืึทืงืืืืขื ืืืืฉืึทื).
ื ืขืืขื ืคืจืืืื ืืขื ืขื ืืขืืืื ืฆื ืคึฟืึทืจืืขืกืขืจื ืื ืจืืืึทืืืืืื ืคืื ืืขื ืคึผืืึทืฅ ืืืืฃ ืคืึธื ืขืก. -
ืคึฟืื ืืขืจ ืืืื ืื ื ืคืื ืืขืืืขืืึธืคึผืขืจืก, re2c ืืื ืงืื ื ืึท ืืขืจ ืคืืืฉืืขื ืืืง ืกืึทืืกืืกืืขื
ืืืืึทืืื ื ืืืืึทืืื ื ืงืึธื ืืื ืืืฆื ืคืึทืจืงืจืืคึผืื ืืื ืืขืืืื ื ืืืืขื ืืื
ืงืขื ืขื ืืืื ืขื ืืืืึทืื ืืื ืื ืงืึทื ืคืืืืขืจ ืึธืคึผืฆืืข --enable-debug.
ืื ืืืืืงืข ืืขืืืื ื ืืื ืืขืืืืขืจื ืืึทื ื - ืึผืืขื ืึท ืืึทื ืฅ ืืึธืจ.
ืจืืึฟ ืคืื ืื ืฆืืื, ืืื ืฉืืขื ืืืง, ืืื ืืขืืืขื ืคืืจืืจืืื ืืืืฃ ืึทื ืืืืืงืืขื ืึท ืืขืึธืจืขืืืฉ ืคืจืืืืืืขืจืง ืืื ืฉืจืืืื
ืึทืจืืืงื "ืขืคืขืงืืืื POSIX ืกืืืืึทืืืฉ ืขืงืกืืจืึทืงืืืึธื ืืืืฃ NFA".
ืื ืึทืืืขืจืืืึทืื ืืืกืงืจืืืื ืืื ืืขื ืึทืจืืืงื ืืขื ืขื ืืืคึผืืึทืืขื ืึทื ืืื ืื ืืงืกืคึผืขืจืืขื ืึทื ืืืืืืึธืืขืง libre2c
(ืืืืื ื ืื ืืืืืืึธืืขืง ืืื ืืขื ืืฉืืึทืจืงืก ืืื ืคืึทืจืงืจืืคึผืื ืืืจื ืคืขืืืงืืึทื ืืื ืืื ืขื ืืืืึทืื ืืืจื ืื ืงืึทื ืคืืืืขืจ ืึธืคึผืฆืืข
--enable-libs). ืื ืืืืืืึธืืขืง ืืื ื ืืฉื ืงืึทื ืกืืืื ืืื ืึท ืงืึธื ืงืืจืขื ื ืฆื ืืืืืกืืื ื
ืคึผืจืึทืืืฉืขืงืก ืืื RE2, ืึธืืขืจ ืืื ืึท ืคืึธืจืฉืื ื ืคึผืืึทืืคืึธืจืืข ืคึฟืึทืจ ืืขืจ ืึทื ืืืืืงืืื ื ืคืื ื ืืึท
ืึทืืืขืจืืืึทืื (ืืืึธืก ืงืขื ืขื ืืืื ืืขืืืืื ื ืืื ืจืข2ืง ืึธืืขืจ ืืื ืื ืืขืจืข ืคึผืจืึทืืืฉืขืงืก).
ืขืก ืืื ืืืื ืืึทืงืืืขื ืืื ืื ืคืื ื ืคืื ืืืื ืื ื ืคืื ืืขืกืืื ื, ืืขื ืืฉืืึทืจืงืก ืืื ืงืจืืืืืื ื ืืืื ืืื ืื ืฆื ืื ืืขืจืข ืฉืคึผืจืึทืื.
ืืึทื ืงืขื ืคืื ืื re2c ืืขืืืขืืึธืคึผืขืจืก ืฆื ืึทืืขืืขื ืืืืก ืืขืืึธืืคึฟื ืืขื ืืขืืืื ื ืคึผืึทืกืืจื,
ืืื ืฆื ืื ืงืื ืืื ืึทืืืขืืืื ืคึฟืึทืจ ืืืืืึทื, ืืฉืืง ืจืืคึผืึธืจืฅ, ืคึผืึทืืฉืึทื, ืืึธืจืึทื, ืืื"ื ื. ;]
ืืงืืจ: linux.org.ru