ພາສາອັງກິດພາສາຝຣັ່ງແອສປາໂຍນ

Ad


OnWorks favicon

ragel - ອອນໄລນ໌ຢູ່ໃນຄລາວ

ເປີດໃຊ້ ragel ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີຜ່ານ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator

ນີ້ແມ່ນຄໍາສັ່ງ ragel ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນສະຖານີເຮັດວຽກອອນໄລນ໌ຟຣີຫຼາຍອັນຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator

ໂຄງການ:

NAME


ragel - ລວບລວມພາສາປົກກະຕິເຂົ້າໄປໃນເຄື່ອງຂອງລັດທີ່ປະຕິບັດໄດ້

ສະຫຼຸບສັງລວມ


ໃຈຮ້າຍ [ທາງເລືອກໃນການ] ເອກະສານ

ລາຍລະອຽດ


Ragel ລວບລວມເຄື່ອງລັດທີ່ມີຂອບເຂດທີ່ສາມາດປະຕິບັດໄດ້ຈາກພາສາປົກກະຕິ. Ragel ສາມາດເຮັດໄດ້
ສ້າງລະຫັດ C, C++, Objective-C, D, Go, ຫຼື Java. ເຄື່ອງຈັກຂອງລັດ Ragel ສາມາດບໍ່ພຽງແຕ່
ຮັບຮູ້ລໍາດັບ byte ເປັນເຄື່ອງສະແດງອອກປົກກະຕິເຮັດ, ແຕ່ຍັງສາມາດປະຕິບັດລະຫັດຢູ່ທີ່
ຈຸດທີ່ຕົນເອງມັກໃນການຮັບຮູ້ພາສາປົກກະຕິ. ລະຫັດຜູ້ໃຊ້ຖືກຝັງໂດຍໃຊ້
ຕົວປະຕິບັດການ inline ທີ່ບໍ່ລົບກວນ syntax ພາສາປົກກະຕິ.

ພາສາຫຼັກປະກອບດ້ວຍຕົວປະຕິບັດການສະແດງອອກປົກກະຕິມາດຕະຖານເຊັ່ນ: ສະຫະພັນ,
concatenation ແລະ kleene star, ປະກອບໂດຍການປະຕິບັດການຝັງຕົວ. Ragel ຍັງ
ສະຫນອງຕົວປະຕິບັດການທີ່ຊ່ວຍໃຫ້ທ່ານຄວບຄຸມຄວາມບໍ່ກໍານົດໃດໆທີ່ທ່ານສ້າງ, ກໍ່ສ້າງ
ເຄື່ອງສະແກນໂດຍໃຊ້ຕົວແບບທີ່ກົງກັນຍາວທີ່ສຸດ, ແລະສ້າງເຄື່ອງຈັກຂອງລັດໂດຍໃຊ້ຕາຕະລາງລັດ
ຕົວແບບ. ມັນຍັງເປັນໄປໄດ້ທີ່ຈະມີອິດທິພົນຕໍ່ການປະຕິບັດເຄື່ອງຂອງລັດຈາກພາຍໃນ
ການປະຕິບັດການຝັງໂດຍການໂດດຫຼືໂທຫາພາກສ່ວນອື່ນໆຂອງເຄື່ອງແລະການປຸງແຕ່ງ
input

Ragel ໃຫ້ການໂຕ້ຕອບທີ່ມີຄວາມຍືດຫຍຸ່ນຫຼາຍກັບພາສາເຈົ້າພາບທີ່ພະຍາຍາມວາງ
ຂໍ້ຈໍາກັດຫນ້ອຍທີ່ສຸດກ່ຽວກັບວິທີທີ່ລະຫັດທີ່ສ້າງຂຶ້ນຖືກນໍາໃຊ້ແລະປະສົມປະສານເຂົ້າໃນ
ຄໍາຮ້ອງສະຫມັກ. ລະຫັດທີ່ສ້າງຂຶ້ນບໍ່ມີການຂຶ້ນກັບ.

OPTIONS


-h, -H, -?, - ຊ່ວຍ
ສະແດງການຊ່ວຍເຫຼືອ ແລະອອກ.

-v ພິມຂໍ້ມູນສະບັບແລະອອກ.

-o ເອກະສານ
ຂຽນຜົນໄດ້ຮັບໃສ່ໄຟລ໌. ຖ້າ -o ບໍ່ໄດ້ຖືກມອບໃຫ້, ຊື່ໄຟລ໌ເລີ່ມຕົ້ນຈະຖືກເລືອກໂດຍ
ການປ່ຽນແທນການຂະຫຍາຍໄຟລ໌ຂອງໄຟລ໌ປ້ອນຂໍ້ມູນ. ສໍາລັບໄຟລ໌ແຫຼ່ງທີ່ລົງທ້າຍດ້ວຍ .rh the
suffix .h ຖືກນໍາໃຊ້. ສໍາລັບໄຟລ໌ແຫຼ່ງອື່ນໆທັງໝົດແມ່ນຄໍາຕໍ່ທ້າຍໂດຍອີງໃສ່ພາສາຜົນຜະລິດ
ຖືກນໍາໃຊ້ (.c, .cpp, .m, ແລະອື່ນໆ). ຖ້າ -o ບໍ່ໄດ້ຖືກມອບໃຫ້ Graphviz ຜົນຜະລິດທີ່ສ້າງຂຶ້ນ
ໄຟລ໌ dot ຖືກຂຽນເປັນຜົນຜະລິດມາດຕະຖານ.

-s ພິມສະຖິຕິບາງຢ່າງກ່ຽວກັບຄວາມຜິດພາດມາດຕະຖານ.

--error-format=gnu
ພິມຂໍ້ຄວາມຜິດພາດໂດຍໃຊ້ຮູບແບບ "file:line:column:" (ຄ່າເລີ່ມຕົ້ນ)

--error-format=msvc
ພິມຂໍ້ຄວາມຜິດພາດໂດຍໃຊ້ຮູບແບບ "file(line,column):"

-d ຢ່າເອົາການກະທຳທີ່ຊໍ້າກັນອອກຈາກລາຍການຄຳສັ່ງ.

-I dir
ເພີ່ມ dir ເຂົ້າໃນບັນຊີລາຍຊື່ຂອງໄດເລກະທໍລີເພື່ອຊອກຫາໄຟລ໌ລວມແລະນໍາເຂົ້າ

-n ຢ່າປະຕິບັດການຫຼຸດຜ່ອນລັດ.

-m ດໍາເນີນການຫຼຸດຫນ້ອຍລົງຫນຶ່ງຄັ້ງ, ໃນຕອນທ້າຍຂອງການລວບລວມເຄື່ອງຈັກຂອງລັດ.

-l ຫຼຸດຫນ້ອຍລົງຫຼັງຈາກເກືອບທຸກໆການດໍາເນີນງານ. ບັນຊີລາຍຊື່ຂອງການດໍາເນີນງານເຊັ່ນ: ສະຫະພັນແມ່ນ
ຫຼຸດຫນ້ອຍລົງຫນຶ່ງຄັ້ງໃນຕອນທ້າຍ. ນີ້ແມ່ນຕົວເລືອກການຫຼຸດຜ່ອນຄ່າເລີ່ມຕົ້ນ.

-e ຫຼຸດ​ຜ່ອນ​ຫຼັງ​ຈາກ​ການ​ດໍາ​ເນີນ​ງານ​ທຸກ​ຄັ້ງ​.

-x ລວບລວມເຄື່ອງຈັກຂອງລັດແລະປ່ອຍຕົວສະແດງ XML ຂອງຂໍ້ມູນເຈົ້າພາບແລະ
ເຄື່ອງຈັກ.

-V ສ້າງໄຟລ໌ຈຸດສໍາລັບ Graphviz.

-p ສະແດງຕົວອັກສອນທີ່ສາມາດພິມໄດ້ໃນປ້າຍຊື່.

-S
ຂໍ້ມູນຈໍາເພາະ FSM ກັບຜົນຜະລິດ.

-M
ຄໍານິຍາມຂອງເຄື່ອງຈັກ / ການເຕືອນເພື່ອຜົນຜະລິດ.

-C ພາສາເຈົ້າພາບແມ່ນ C, C++, Obj-C ຫຼື Obj-C++. ນີ້ແມ່ນພາສາເຈົ້າພາບເລີ່ມຕົ້ນ
ທາງເລືອກ.

-D ພາສາເຈົ້າພາບແມ່ນ D.

-J ພາສາໂຮດແມ່ນ Java.

-Z ພາສາເຈົ້າພາບແມ່ນ Go.

-R ພາສາເຈົ້າພາບແມ່ນ Ruby.

-L ຍັບຍັ້ງການຂຽນ # ເສັ້ນທາງ.

0 (C/D/Java/Ruby/C#/Go) ສ້າງຕາຕະລາງທີ່ຂັບເຄື່ອນດ້ວຍ FSM. ນີ້ແມ່ນຮູບແບບລະຫັດເລີ່ມຕົ້ນ.
ຕາຕະລາງທີ່ຂັບເຄື່ອນ FSM ເປັນຕົວແທນຂອງເຄື່ອງຈັກຂອງລັດເປັນຂໍ້ມູນສະຖິດ. ມີຕາຕະລາງ
ຂອງລັດ, ການຫັນປ່ຽນ, ຕົວຊີ້ວັດ ແລະການກະທໍາ. ສະຖານະປັດຈຸບັນຖືກເກັບໄວ້ໃນ a
ຕົວແປ. ການ​ປະ​ຕິ​ບັດ​ແມ່ນ loop ທີ່​ເບິ່ງ​ວ່າ​ສະ​ຖາ​ນະ​ການ​ປະ​ຈຸ​ບັນ​ແລະ​
ລັກ​ສະ​ນະ​ປະ​ຈຸ​ບັນ​ທີ່​ຈະ​ປຸງ​ແຕ່ງ​ເບິ່ງ​ການ​ປ່ຽນ​ແປງ​ທີ່​ຈະ​ໃຊ້​ເວ​ລາ​ການ​ນໍາ​ໃຊ້​ການ​ຄົ້ນ​ຫາ​ຄູ່​,
ປະ​ຕິ​ບັດ​ການ​ກະ​ທໍາ​ໃດ​ຫນຶ່ງ​ແລະ​ຍ້າຍ​ອອກ​ໄປ​ໃນ​ລັດ​ເປົ້າ​ຫມາຍ​. ໂດຍທົ່ວໄປ, ຕາຕະລາງຂັບເຄື່ອນ
FSM ຜະລິດ binary ຂະຫນາດນ້ອຍກວ່າ ແລະຕ້ອງການ compile ພາສາເຈົ້າພາບທີ່ມີລາຄາແພງກວ່າ
ແຕ່ສົ່ງຜົນໃຫ້ລະຫັດແລ່ນຊ້າລົງ. ຕາຕະລາງຂັບເຄື່ອນ FSM ແມ່ນເຫມາະສົມສໍາລັບ FSM ໃດ.

1 (C/D/Ruby/C#/Go) ສ້າງຕາຕະລາງ FSM ທີ່ໄວຂຶ້ນໂດຍການຂະຫຍາຍລາຍການປະຕິບັດໃນ
ລະຫັດປະຕິບັດການປະຕິບັດ.

-F0 (C/D/Ruby/C#/Go) ສ້າງຕາຕະລາງຮາບພຽງທີ່ຂັບເຄື່ອນດ້ວຍ FSM. ການຫັນປ່ຽນແມ່ນເປັນຕົວແທນ
array ທີ່ຖືກດັດສະນີໂດຍຕົວອັກສອນປະຈຸບັນ. ນີ້ກໍາຈັດຄວາມຕ້ອງການສໍາລັບ a
ການຄົ້ນຫາຄູ່ເພື່ອຊອກຫາການຫັນປ່ຽນແລະຜະລິດລະຫັດໄວຂຶ້ນ, ແນວໃດກໍ່ຕາມມັນເປັນພຽງແຕ່
ທີ່​ເຫມາະ​ສົມ​ສໍາ​ລັບ​ຕົວ​ອັກ​ສອນ​ຂະ​ຫນາດ​ນ້ອຍ​.

-F1 (C/D/Ruby/C#/Go) ສ້າງຕາຕະລາງຮາບພຽງທີ່ໄວຂຶ້ນໂດຍຂັບເຄື່ອນ FSM ໂດຍການຂະຫຍາຍລາຍການປະຕິບັດ.
ໃນລະຫັດປະຕິບັດການປະຕິບັດ.

0 (C/D/C#/Go) ສ້າງ FSM ທີ່ຂັບເຄື່ອນໂດຍ goto. FSM ທີ່ຂັບເຄື່ອນໂດຍ goto ເປັນຕົວແທນຂອງລັດ
ເຄື່ອງເປັນຊຸດຂອງຄໍາຖະແຫຼງທີ່ goto. ໃນຂະນະທີ່ຢູ່ໃນເຄື່ອງ, ສະຖານະປະຈຸບັນແມ່ນ
ເກັບຮັກສາໄວ້ໂດຍຕົວຊີ້ຄໍາແນະນໍາຂອງໂປເຊດເຊີ. ການປະຕິບັດແມ່ນຫນ້າທີ່ຮາບພຽງ
ບ່ອນທີ່ການຄວບຄຸມແມ່ນຜ່ານຈາກລັດໄປຫາລັດໂດຍໃຊ້ goto. ໂດຍທົ່ວໄປ, goto FSM
ຜະລິດລະຫັດໄວຂຶ້ນແຕ່ສົ່ງຜົນໃຫ້ binary ໃຫຍ່ກວ່າ ແລະເປັນເຈົ້າພາບທີ່ມີລາຄາແພງກວ່າ
ລວບລວມພາສາ.

1 (C/D/C#/Go) ສ້າງ Goto ທີ່ຂັບເຄື່ອນດ້ວຍ FSM ທີ່ໄວຂຶ້ນໂດຍການຂະຫຍາຍລາຍການປະຕິບັດໃນ
ລະຫັດປະຕິບັດການປະຕິບັດ.

2 (C/D/Go) ສ້າງ FSM ທີ່ຂັບເຄື່ອນດ້ວຍ goto ທີ່ໄວແທ້ໆໂດຍການຝັງລາຍຊື່ການປະຕິບັດຢູ່ໃນ
ລະຫັດຄວບຄຸມເຄື່ອງຈັກຂອງລັດ.

- ປ (C/D) N-Way Split ໄວແທ້ FSM ທີ່ຂັບເຄື່ອນໂດຍ goto.

RAGEL ປັດໄຈນໍາເຂົ້າ


ຫມາຍເຫດ: ນີ້ແມ່ນຄໍາອະທິບາຍສັ້ນໆຂອງການປ້ອນຂໍ້ມູນ Ragel. Ragel ໄດ້ຖືກອະທິບາຍໃນລາຍລະອຽດເພີ່ມເຕີມ
ໃນຄູ່ມືຜູ້ໃຊ້ທີ່ມີຢູ່ໃນຫນ້າທໍາອິດ (ເບິ່ງຂ້າງລຸ່ມນີ້).

Ragel ປົກກະຕິຈະສົ່ງໄຟລ໌ປ້ອນຂໍ້ມູນໂດຍກົງໄປຫາຜົນຜະລິດ. ເມື່ອມັນເຫັນ FSM
ຂໍ້ມູນຈໍາເພາະທີ່ປະກອບດ້ວຍເຄື່ອງ instantiations ມັນຢຸດເພື່ອສ້າງເຄື່ອງຈັກຂອງລັດ.
ຖ້າມີການຂຽນຂໍ້ຄວາມ (ເຊັ່ນ "ຂຽນ exec") ຫຼັງຈາກນັ້ນ ragel ປ່ອຍຕົວທີ່ສອດຄ້ອງກັນ.
ລະຫັດ. ສາມາດມີຈໍານວນສະເພາະຂອງ FSM ໃນໄຟລ໌ປ້ອນຂໍ້ມູນ. FSM ຫຼາຍສາຍ
ສະເພາະເລີ່ມຕົ້ນດ້ວຍ '%%{' ແລະລົງທ້າຍດ້ວຍ '}%%'. ຂໍ້ສະເພາະ FSM ແຖວດຽວ
ເລີ່ມຕົ້ນດ້ວຍ %% ແລະສິ້ນສຸດຢູ່ທີ່ແຖວໃໝ່ທຳອິດ.

FSM ຖະແຫຼງການ


ເຄື່ອງ ຊື່ຂອງທ່ານ:
ຕັ້ງຊື່ຂອງເຄື່ອງຈັກ. ຖ້າໃຫ້, ມັນຕ້ອງເປັນຄໍາຖະແຫຼງທໍາອິດ.

ຕົວອັກສອນ ປະເພດ:
ກໍານົດປະເພດຂໍ້ມູນຂອງຕົວອັກສອນ.

GetKey:
ລະບຸວິທີການດຶງຕົວໜັງສືຈາກປະເພດອົງປະກອບ.

ປະກອບດ້ວຍ:
ລວມເອົາເຄື່ອງທີ່ມີຊື່ດຽວກັນກັບປັດຈຸບັນ ຫຼືຂອງຊື່ອື່ນຢູ່ໃນເຄື່ອງ
ໄຟລ໌ປັດຈຸບັນ ຫຼືບາງໄຟລ໌ອື່ນໆ.

ການປະຕິບັດ ຄວາມຫມາຍ:
ກໍານົດການປະຕິບັດທີ່ສາມາດຖືກຮຽກຮ້ອງໂດຍ FSM.

Fsm ຄໍານິຍາມ, ຕົວຊີ້ບອກ ແລະ ຍາວທີ່ສຸດ ການແຂ່ງຂັນ ຕົວຊີ້ບອກ:
ໃຊ້ເພື່ອສ້າງ FSMs. ຄໍາອະທິບາຍ syntax ໃນສອງສາມພາກຕໍ່ໄປ.

ການເຂົ້າເຖິງ:
ລະບຸວິທີການເຂົ້າເຖິງຕົວແປເຄື່ອງຈັກສະຖານະຄົງທີ່.

ຂຽນ: ຂຽນບາງອົງປະກອບຂອງເຄື່ອງຈັກ.

Variable:
ລົບລ້າງຊື່ຕົວແປເລີ່ມຕົ້ນ (p, pe, cs, act, ແລະອື່ນໆ).

BASIC ເຄື່ອງ


ເຄື່ອງຈັກພື້ນຖານແມ່ນຕົວປະຕິບັດພື້ນຖານຂອງການສະແດງອອກຂອງພາສາປົກກະຕິ.

'ສະບາຍດີ'
Concat ຕົວຫນັງສື. ຜະລິດການສົມທົບຂອງຕົວອັກສອນໃນສະຕຣິງ. ສະຫນັບສະຫນູນ
ລຳດັບໜີດ້ວຍ '\'. ຜົນໄດ້ຮັບຈະມີສະຖານະເລີ່ມຕົ້ນແລະການຫັນປ່ຽນເປັນ
ສະຖານະໃໝ່ສຳລັບແຕ່ລະຕົວອັກສອນໃນສະຕຣິງ. ລັດສຸດທ້າຍໃນລໍາດັບຈະ
ຈະ​ໄດ້​ຮັບ​ການ​ສຸດ​ທ້າຍ​. ເພື່ອເຮັດໃຫ້ສະຕຣິງເປັນຕົວພິມນ້ອຍ, ຕື່ມ 'i' ໃສ່ສະຕຣິງ, ດັ່ງ
ໃນ 'cmd'i.

"ສະບາຍດີ"
ຄືກັນກັບສະບັບອ້າງອີງດຽວ.

[ສະບາຍດີ]
ຫຼືຮູ້ຫນັງສື. ຜະລິດສະຫະພັນຂອງລັກສະນະ. ສະ​ຫນັບ​ສະ​ຫນູນ​ລະ​ດັບ​ຕົວ​ອັກ​ສອນ​ທີ່​ມີ '-'​,
ປະຕິເສດຄວາມຮູ້ສຶກຂອງສະຫະພາບດ້ວຍ '^' ເບື້ອງຕົ້ນ ແລະ ໜີ ຈາກລໍາດັບ '\'.
ຜົນໄດ້ຮັບຈະມີສອງລັດທີ່ມີການຫັນປ່ຽນລະຫວ່າງພວກມັນສໍາລັບແຕ່ລະລັກສະນະ
ຫຼືໄລຍະ.

ຫມາຍເຫດ: '', "", ແລະ [] ຜະລິດ FSMs null. ເຄື່ອງຈັກ Null ມີລັດດຽວທີ່ເປັນທັງການເລີ່ມຕົ້ນ
ສະຖານະ ແລະສະຖານະສຸດທ້າຍ ແລະກົງກັບສະຕຣິງຄວາມຍາວສູນ. ເຄື່ອງຈັກ null ອາດຈະຖືກສ້າງຂື້ນ
ກັບເຄື່ອງ builtin null.

integer
ສ້າງເຄື່ອງລັດສອງອັນດ້ວຍການປ່ຽນອັນໜຶ່ງໃນຈຳນວນເຕັມທີ່ໃຫ້.

hex ສ້າງເຄື່ອງລັດສອງອັນດ້ວຍການຫັນປ່ຽນອັນໜຶ່ງຢູ່ໃນເລກຖານສິບຫົກທີ່ໃຫ້ໄວ້.

/simple_regex/
ການສະແດງອອກປົກກະຕິງ່າຍດາຍ. ຮອງຮັບ notation '.', '*' ແລະ '[]', character
ໄລຍະທີ່ມີ '-', negating ຄວາມຮູ້ສຶກຂອງສະແດງອອກ OR ກັບແລະເບື້ອງຕົ້ນ '^' ແລະ
ລຳດັບໜີດ້ວຍ '\'. ນອກຈາກນີ້ຍັງສະຫນັບສະຫນູນຫນຶ່ງຕໍ່ຫນ້າທຸງ: i. ໃຊ້ມັນເພື່ອຜະລິດ a
ການສະແດງອອກປົກກະຕິຂອງ case-insensitive, ເຊັ່ນໃນ /GET/i.

lit .. lit
ລະບຸໄລຍະ. ຂອບເຂດເທິງແລະລຸ່ມທີ່ອະນຸຍາດແມ່ນ concat literals ຂອງ
ຄວາມຍາວຫນຶ່ງແລະເຄື່ອງຕົວເລກ. ຕົວຢ່າງ, 0x10..0x20, 0..63, ແລະ 'a'..'z' ແມ່ນ
ຊ່ວງທີ່ຖືກຕ້ອງ.

variable_name
ອ້າງອີງເຖິງຄໍານິຍາມເຄື່ອງທີ່ມອບໝາຍໃຫ້ກັບຊື່ຕົວແປທີ່ໃຫ້.

builtin_machine
ມີເຄື່ອງກໍ່ສ້າງຫຼາຍອັນ. ພວກເຂົາເຈົ້າແມ່ນທັງສອງເຄື່ອງຈັກຂອງລັດສໍາລັບ
ຈຸດປະສົງຂອງການຈັບຄູ່ຫ້ອງຮຽນທົ່ວໄປຂອງລັກສະນະ. ພວກ​ເຂົາ​ແມ່ນ:

ໃດ ຕົວອັກສອນໃດນຶ່ງໃນຕົວໜັງສື.

ASCII ຕົວອັກສອນ Ascii 0..127.

ຂະຫຍາຍ Ascii ຂະຫຍາຍຕົວອັກສອນ. ນີ້ແມ່ນໄລຍະ -128..127 ສໍາລັບຕົວອັກສອນທີ່ລົງນາມ
ແລະຂອບເຂດ 0..255 ສໍາລັບຕົວອັກສອນທີ່ບໍ່ໄດ້ເຊັນ.

alpha ຕົວໜັງສື /[A-Za-z]/.

ຫລັກ ຕົວເລກ /[0-9]/.

ເລກເກົ່າ ຕົວເລກອັນຟາ /[0-9A-Za-z]/.

ຕ່ໍາ ຕົວພິມນ້ອຍ /[az]/.

ເທິງ ຕົວພິມໃຫຍ່ /[AZ]/.

xdigit ຕົວເລກເລກຖານສິບຫົກ /[0-9A-Fa-f]/.

cntrl ຕົວອັກສອນຄວບຄຸມ 0..31.

graph ໂຕອັກສອນ /[!-~]/.

ພິມ ຕົວອັກສອນທີ່ສາມາດພິມໄດ້ /[ -~]/.

punct ເຄື່ອງໝາຍວັກຕອນ. ຕົວອັກສອນທີ່ເປັນກາຟິກທີ່ບໍ່ແມ່ນຕົວເລກອັນຟາ
/[!-/:-@\[-`{-~]/.

ຊ່ອງ ຍະຫວ່າງ /[\t\v\f\n\r]/.

null ສະຕຣິງຄວາມຍາວສູນ. ເທົ່າກັບ '', "" ແລະ [].

ຫວ່າງເປົ່າ ຊຸດເປົ່າ. ບໍ່ກົງກັນ.

ບໍລິສັດ BRIEF ຜູ້ ດຳ ເນີນການ ການອ້າງອິງ


ຜູ້ປະກອບການຖືກຈັດກຸ່ມຕາມລໍາດັບ, ກຸ່ມ 1 ແມ່ນຕໍ່າສຸດ ແລະ ກຸ່ມ 6 ສູງສຸດ.

ກຸ່ມ 1:

ຕົວຢ່າງ , ຕົວຢ່າງ
ເຂົ້າ​ຮ່ວມ​ເຄື່ອງ​ຈັກ​ຮ່ວມ​ກັນ​ໂດຍ​ບໍ່​ມີ​ການ​ແຕ້ມ​ການ​ຫັນ​ປ່ຽນ​ໃດ​ຫນຶ່ງ​, ການ​ສ້າງ​ຕັ້ງ​ລັດ​ເລີ່ມ​ຕົ້ນ​ຫຼື​
ລັດສຸດທ້າຍໃດໆ. ສະຖານະເລີ່ມຕົ້ນຕ້ອງຖືກລະບຸຢ່າງຊັດເຈນດ້ວຍປ້າຍ "ເລີ່ມຕົ້ນ".
ລັດສຸດທ້າຍອາດຈະຖືກລະບຸດ້ວຍການຫັນປ່ຽນຂອງ epsilon ໄປເປັນ implicitly
ສ້າງລັດ "ສຸດທ້າຍ".

ກຸ່ມ 2:

ຕົວຢ່າງ | ຕົວຢ່າງ
ຜະລິດເຄື່ອງທີ່ກົງກັບສະຕຣິງໃດນຶ່ງໃນເຄື່ອງໜຶ່ງ ຫຼືເຄື່ອງຈັກສອງ.

ຕົວຢ່າງ & ຕົວຢ່າງ
ຜະລິດເຄື່ອງຈັກທີ່ກົງກັບສະຕຣິງໃດໆທັງຢູ່ໃນເຄື່ອງຈັກດຽວແລະເຄື່ອງຈັກ
ສອງ.

ຕົວຢ່າງ - ຕົວຢ່າງ
ຜະລິດເຄື່ອງຈັກທີ່ກົງກັບສະຕຣິງໃດນຶ່ງທີ່ຢູ່ໃນເຄື່ອງໜຶ່ງແຕ່ບໍ່ໄດ້ຢູ່ໃນ
ເຄື່ອງສອງ.

ຕົວຢ່າງ -- ຕົວຢ່າງ
ການຫັກລົບທີ່ເຂັ້ມແຂງ. ກົງກັບສະຕຣິງໃດນຶ່ງໃນເຄື່ອງໜຶ່ງທີ່ບໍ່ມີສະຕຣິງໃດໆ
ໃນເຄື່ອງສອງເປັນ substring.

ກຸ່ມ 3:

ຕົວຢ່າງ . ຕົວຢ່າງ
ຜະລິດເຄື່ອງທີ່ກົງກັບສາຍທັງໝົດໃນເຄື່ອງໜຶ່ງຕາມດ້ວຍເຄື່ອງທັງໝົດ
ສາຍໃນເຄື່ອງສອງ.

ຕົວຢ່າງ :> ຕົວຢ່າງ
Entry-Guarded Concatenation: ຢຸດເຄື່ອງໜຶ່ງເມື່ອເຂົ້າໄປຫາເຄື່ອງສອງ.

ຕົວຢ່າງ :>> ຕົວຢ່າງ
Finish-Guarded Concatenation: ຈະຢຸດເຄື່ອງໜຶ່ງເມື່ອເຄື່ອງສອງສຳເລັດ.

ຕົວຢ່າງ <: ຕົວຢ່າງ
ການປະສົມກັນແບບປ້ອງກັນຊ້າຍ: ໃຫ້ຄວາມສຳຄັນສູງກວ່າກັບເຄື່ອງຈັກອັນໜຶ່ງ.

ຫມາຍເຫດ: Concatenation ແມ່ນຕົວປະຕິບັດການເລີ່ມຕົ້ນ. ສອງເຄື່ອງຕິດກັນບໍ່ມີ
ຜູ້ປະຕິບັດການລະຫວ່າງພວກມັນສົ່ງຜົນໃຫ້ການດໍາເນີນງານ concatenation.

ກຸ່ມ 4:

ປ້າຍ: ຕົວຢ່າງ
ແນບປ້າຍກຳກັບໃສ່ສຳນວນ. ປ້າຍຊື່ສາມາດຖືກນໍາໃຊ້ໂດຍການຫັນປ່ຽນ epsilon ແລະ
fgoto ແລະ fcall ຖະແຫຼງການໃນການປະຕິບັດ. ຍັງສັງເກດວ່າການອ້າງອີງຂອງເຄື່ອງຈັກ
ຄໍານິຍາມເຮັດໃຫ້ເກີດການສ້າງປ້າຍຊື່ອັນດຽວກັນ.

ກຸ່ມ 5:

ຕົວຢ່າງ -> ປ້າຍ
ແຕ້ມການຫັນປ່ຽນຂອງ epsilon ໄປຫາລັດທີ່ກໍານົດໂດຍປ້າຍຊື່. ປ້າຍກຳກັບຕ້ອງເປັນຊື່ໃນ
ຂອບເຂດປະຈຸບັນ. ການຫັນປ່ຽນ Epsilon ຖືກແກ້ໄຂເມື່ອຕົວປະຕິບັດການເຄື່ອງໝາຍຈຸດ
ການປະເມີນແລະຢູ່ໃນຮາກຂອງຕົ້ນໄມ້ສະແດງອອກຂອງເຄື່ອງຈັກ
ການມອບໝາຍ/ຕົວຊີ້ບອກ.

ກຸ່ມ 6: ການກະທໍາ

ການກະທຳອາດຈະເປັນຊື່ທີ່ກຳນົດໄວ້ລ່ວງໜ້າດ້ວຍຄຳຖະແຫຼງການກະທຳ ຫຼືອາດຈະຖືກລະບຸໂດຍກົງ
ດ້ວຍ '{' ແລະ '}' ໃນການສະແດງຜົນ.

ຕົວຢ່າງ > ການປະຕິບັດ
ຝັງການປະຕິບັດເຂົ້າໃນການເລີ່ມຕົ້ນການຫັນປ່ຽນ.

ຕົວຢ່າງ @ ການປະຕິບັດ
ຝັງການປະຕິບັດເຂົ້າໄປໃນການຫັນປ່ຽນໄປສູ່ສະຖານະສຸດທ້າຍ.

ຕົວຢ່າງ $ ການປະຕິບັດ
ຝັງການປະຕິບັດເຂົ້າໄປໃນທຸກການຫັນປ່ຽນ. ບໍ່ລວມເອົາໄລຍະທີ່ຍັງຄ້າງຢູ່.

ຕົວຢ່າງ % ການປະຕິບັດ
ຝັງການປະຕິບັດເຂົ້າໄປໃນການລໍຖ້າການຫັນປ່ຽນຈາກລັດສຸດທ້າຍ.

ກຸ່ມ 6: EOF ການກະທໍາ

ເມື່ອການສໍາເລັດຮູບປົກກະຕິຂອງເຄື່ອງຈັກເອີ້ນວ່າການປະຕິບັດ EOF ຂອງລັດປະຈຸບັນຖືກປະຕິບັດ.

ຕົວຢ່າງ >/ ການປະຕິບັດ
ຝັງການດໍາເນີນການ EOF ເຂົ້າໄປໃນສະຖານະເລີ່ມຕົ້ນ.

ຕົວຢ່າງ </ ການປະຕິບັດ
ຝັງການດໍາເນີນການ EOF ເຂົ້າໄປໃນທຸກລັດຍົກເວັ້ນສະຖານະເລີ່ມຕົ້ນ.

ຕົວຢ່າງ $/ ການປະຕິບັດ
ຝັງການດໍາເນີນການ EOF ເຂົ້າໄປໃນລັດທັງຫມົດ.

ຕົວຢ່າງ %/ ການປະຕິບັດ
ຝັງການປະຕິບັດ EOF ເຂົ້າໄປໃນລັດສຸດທ້າຍ.

ຕົວຢ່າງ @/ ການປະຕິບັດ
ຝັງການດໍາເນີນການ EOF ເຂົ້າໄປໃນທຸກລັດທີ່ບໍ່ແມ່ນສຸດທ້າຍ.

ຕົວຢ່າງ <>/ ການປະຕິບັດ
ຝັງການດໍາເນີນການ EOF ເຂົ້າໄປໃນທຸກລັດທີ່ບໍ່ແມ່ນລັດເລີ່ມຕົ້ນແລະນັ້ນບໍ່ແມ່ນ
ສຸດທ້າຍ (ລັດກາງ).

ກຸ່ມ 6: Global Error ການກະທໍາ

ການປະຕິບັດຄວາມຜິດພາດທົ່ວໂລກຈະຖືກເກັບໄວ້ໃນລັດຈົນກ່ວາເຄື່ອງຂອງລັດສຸດທ້າຍໄດ້ຢ່າງເຕັມສ່ວນ
ກໍ່ສ້າງ. ຫຼັງຈາກນັ້ນ, ພວກມັນຖືກໂອນໄປສູ່ການຫັນປ່ຽນຄວາມຜິດພາດ, ໃຫ້ຜົນກະທົບຂອງ a
ຄຳສັ່ງເລີ່ມຕົ້ນ.

ຕົວຢ່າງ >! ການປະຕິບັດ
ຝັງການດໍາເນີນການຜິດພາດທົ່ວໂລກເຂົ້າໄປໃນສະຖານະເລີ່ມຕົ້ນ.

ຕົວຢ່າງ <! ການປະຕິບັດ
ຝັງການປະຕິບັດຄວາມຜິດພາດທົ່ວໂລກເຂົ້າໄປໃນທຸກລັດຍົກເວັ້ນສະຖານະເລີ່ມຕົ້ນ.

ຕົວຢ່າງ $! ການປະຕິບັດ
ຝັງ​ການ​ກະ​ທໍາ​ຄວາມ​ຜິດ​ພາດ​ທົ່ວ​ໂລກ​ເຂົ້າ​ໄປ​ໃນ​ລັດ​ທັງ​ຫມົດ​.

ຕົວຢ່າງ %! ການປະຕິບັດ
ຝັງການປະຕິບັດຄວາມຜິດພາດທົ່ວໂລກເຂົ້າໄປໃນລັດສຸດທ້າຍ.

ຕົວຢ່າງ @! ການປະຕິບັດ
ຝັງການກະ ທຳ ຂໍ້ຜິດພາດທົ່ວໂລກເຂົ້າໄປໃນທຸກລັດທີ່ບໍ່ແມ່ນສຸດທ້າຍ.

ຕົວຢ່າງ <>! ການປະຕິບັດ
ຝັງການປະຕິບັດຄວາມຜິດພາດທົ່ວໂລກເຂົ້າໄປໃນທຸກລັດທີ່ບໍ່ແມ່ນສະຖານະເລີ່ມຕົ້ນແລະເປັນ
ບໍ່ແມ່ນສຸດທ້າຍ (ລັດກາງ).

ກຸ່ມ 6: ທ້ອງຖິ່ນ Error ການກະທໍາ

ການປະຕິບັດຄວາມຜິດພາດໃນທ້ອງຖິ່ນຈະຖືກເກັບໄວ້ໃນລັດຈົນກ່ວາເຄື່ອງທີ່ມີຊື່ໄດ້ຖືກສ້າງຂື້ນຢ່າງສົມບູນ.
ເຂົາເຈົ້າໄດ້ຖືກໂອນຫຼັງຈາກນັ້ນໄປສູ່ການຫັນປ່ຽນຄວາມຜິດພາດ, ໃຫ້ຜົນກະທົບຂອງການປະຕິບັດໃນຕອນຕົ້ນສໍາລັບ
ພາກສ່ວນຂອງເຄື່ອງຈັກທັງຫມົດ. ໃຫ້ສັງເກດວ່າຊື່ອາດຈະຖືກຍົກເວັ້ນ, ໃນກໍລະນີນີ້
ການກະ ທຳ ຈະຖືກໂອນໄປສູ່ການກະ ທຳ ຂໍ້ຜິດພາດເມື່ອການກໍ່ສ້າງເຄື່ອງປະຈຸບັນ.

ຕົວຢ່າງ >^ ການປະຕິບັດ
ຝັງການດໍາເນີນການຄວາມຜິດພາດໃນທ້ອງຖິ່ນເຂົ້າໄປໃນສະຖານະເລີ່ມຕົ້ນ.

ຕົວຢ່າງ <^ ການປະຕິບັດ
ຝັງຄຳສັ່ງຄວາມຜິດພາດໃນທ້ອງຖິ່ນໃສ່ໃນທຸກສະຖານະ ຍົກເວັ້ນສະຖານະເລີ່ມຕົ້ນ.

ຕົວຢ່າງ $^ ການປະຕິບັດ
ຝັງ​ການ​ກະ​ທໍາ​ຄວາມ​ຜິດ​ພາດ​ໃນ​ທ້ອງ​ຖິ່ນ​ເຂົ້າ​ໄປ​ໃນ​ລັດ​ທັງ​ຫມົດ​.

ຕົວຢ່າງ %^ ການປະຕິບັດ
ຝັງການດໍາເນີນການຄວາມຜິດພາດໃນທ້ອງຖິ່ນເຂົ້າໄປໃນສະຖານະສຸດທ້າຍ.

ຕົວຢ່າງ @^ ການປະຕິບັດ
ຝັງການດໍາເນີນການຜິດພາດໃນທ້ອງຖິ່ນເຂົ້າໄປໃນທຸກສະຖານະທີ່ບໍ່ແມ່ນສຸດທ້າຍ.

ຕົວຢ່າງ <>^ ການປະຕິບັດ
ຝັງການດໍາເນີນການຄວາມຜິດພາດໃນທ້ອງຖິ່ນເຂົ້າໄປໃນທຸກສະຖານະທີ່ບໍ່ແມ່ນສະຖານະເລີ່ມຕົ້ນແລະເປັນ
ບໍ່ແມ່ນສຸດທ້າຍ (ລັດກາງ).

ກຸ່ມ 6: ກັບລັດ ການກະທໍາ

ການກະ ທຳ ຂອງລັດຈະຖືກເກັບໄວ້ໃນລັດແລະຖືກປະຕິບັດທຸກຄັ້ງທີ່ເຄື່ອງເຄື່ອນຍ້າຍເຂົ້າໄປໃນ a
ລັດ. ນີ້ປະກອບມີການຫັນປ່ຽນປົກກະຕິ, ແລະການໂອນການຄວບຄຸມເຊັ່ນ fgoto. ຫມາຍ​ເຫດ​
ທີ່ກໍານົດສະຖານະປະຈຸບັນຈາກພາຍນອກເຄື່ອງ (ຕົວຢ່າງໃນໄລຍະ
initialization) ບໍ່ນັບເປັນການຫັນປ່ຽນໄປສູ່ລັດ.

ຕົວຢ່າງ >~ ການປະຕິບັດ
ຝັງ​ການ​ປະ​ຕິ​ບັດ​ການ​ປະ​ຕິ​ບັດ​ຕໍ່​ລັດ​ເຂົ້າ​ໄປ​ໃນ​ສະ​ຖາ​ນະ​ການ​ເລີ່ມ​ຕົ້ນ​.

ຕົວຢ່າງ <~ ການປະຕິບັດ
ຝັງການກະທຳຕໍ່ລັດເຂົ້າໄປໃນທຸກລັດ ຍົກເວັ້ນສະຖານະເລີ່ມຕົ້ນ.

ຕົວຢ່າງ $~ ການປະຕິບັດ
ຝັງ​ການ​ກະ​ທຳ​ຕໍ່​ລັດ​ເຂົ້າ​ໄປ​ໃນ​ທຸກ​ລັດ.

ຕົວຢ່າງ %~ ການປະຕິບັດ
ຝັງການກະ ທຳ ຕໍ່ລັດເຂົ້າໄປໃນລັດສຸດທ້າຍ.

ຕົວຢ່າງ @~ ການປະຕິບັດ
ຝັງ​ການ​ກະ​ທຳ​ຕໍ່​ລັດ​ເຂົ້າ​ໄປ​ໃນ​ທຸກ​ລັດ​ທີ່​ບໍ່​ແມ່ນ​ຂັ້ນ​ສຸດ​ທ້າຍ.

ຕົວຢ່າງ <>~ ການປະຕິບັດ
ຝັງ​ການ​ກະ​ທໍາ​ຕໍ່​ລັດ​ເຂົ້າ​ໄປ​ໃນ​ລັດ​ທັງ​ຫມົດ​ທີ່​ບໍ່​ແມ່ນ​ລັດ​ເລີ່ມ​ຕົ້ນ​ແລະ​ບໍ່​ແມ່ນ​
ສຸດທ້າຍ (ລັດກາງ).

ກຸ່ມ 6: ຈາກລັດ ການກະທໍາ

ການປະຕິບັດຈາກລັດຈະຖືກປະຕິບັດທຸກຄັ້ງທີ່ລັດປ່ຽນຕົວລະຄອນໃດໜຶ່ງ. ນີ້
ປະກອບມີການຫັນປ່ຽນຄວາມຜິດພາດແລະການຫັນປ່ຽນໄປສູ່ຕົນເອງ.

ຕົວຢ່າງ >* ການປະຕິບັດ
ຝັງການດໍາເນີນການຈາກລັດເຂົ້າໄປໃນສະຖານະເລີ່ມຕົ້ນ.

ຕົວຢ່າງ <* ການປະຕິບັດ
ຝັງການກະ ທຳ ຈາກລັດເຂົ້າໄປໃນທຸກໆລັດຍົກເວັ້ນລັດເລີ່ມຕົ້ນ.

ຕົວຢ່າງ $* ການປະຕິບັດ
ຝັງການກະ ທຳ ຈາກລັດເຂົ້າໄປໃນທຸກລັດ.

ຕົວຢ່າງ %* ການປະຕິບັດ
ຝັງການກະ ທຳ ຈາກລັດເຂົ້າໄປໃນລັດສຸດທ້າຍ.

ຕົວຢ່າງ @* ການປະຕິບັດ
ຝັງ​ການ​ກະ​ທຳ​ຈາກ​ລັດ​ເຂົ້າ​ໄປ​ໃນ​ທຸກ​ລັດ​ທີ່​ບໍ່​ແມ່ນ​ຂັ້ນ​ສຸດ​ທ້າຍ.

ຕົວຢ່າງ <>* ການປະຕິບັດ
ຝັງການກະ ທຳ ຈາກລັດເຂົ້າໄປໃນທຸກລັດທີ່ບໍ່ແມ່ນລັດເລີ່ມຕົ້ນແລະບໍ່ແມ່ນ
ສຸດທ້າຍ (ລັດກາງ).

ກຸ່ມ 6: ບູລິມະສິດ ການມອບຫມາຍ

ບຸລິມະສິດຖືກມອບໝາຍໃຫ້ຊື່ພາຍໃນໄລຍະການຫັນປ່ຽນ. ບຸລິມະສິດພຽງແຕ່ຊື່ດຽວກັນເທົ່ານັ້ນ
ອະນຸຍາດໃຫ້ໂຕ້ຕອບກັບ. ໃນ​ຮູບ​ແບບ​ທໍາ​ອິດ​ຂອງ​ການ​ບູ​ລິ​ມະ​ສິດ​ຊື່​ເລີ່ມ​ຕົ້ນ​ຂອງ​ຊື່​ຂອງ​
ນິຍາມເຄື່ອງໝາຍບູລິມະສິດຖືກມອບໝາຍໃນ. ການຫັນປ່ຽນບໍ່ມີຄ່າເລີ່ມຕົ້ນ
ບູລິມະສິດ.

ຕົວຢ່າງ > int
ກຳນົດບູລິມະສິດ int ໃນທຸກການຫັນປ່ຽນອອກຈາກສະຖານະເລີ່ມຕົ້ນ.

ຕົວຢ່າງ @ int
ກຳນົດບູລິມະສິດ int ໃນທຸກການຫັນປ່ຽນທີ່ເຂົ້າສູ່ສະຖານະສຸດທ້າຍ.

ຕົວຢ່າງ $ int
ກຳນົດບູລິມະສິດ int ໃນທຸກການຫັນປ່ຽນທີ່ມີຢູ່ແລ້ວ.

ຕົວຢ່າງ % int
ກຳນົດບູລິມະສິດ int ໃນທຸກໄລຍະທີ່ຍັງຄ້າງຢູ່.

ຮູບແບບທີສອງຂອງການມອບຫມາຍບູລິມະສິດອະນຸຍາດໃຫ້ຜູ້ຂຽນໂປລແກລມລະບຸຊື່ທີ່
ບູລິມະສິດໄດ້ຖືກມອບຫມາຍ, ອະນຸຍາດໃຫ້ການໂຕ້ຕອບຂ້າມຂອບເຂດກໍານົດເຄື່ອງຈັກ.

ຕົວຢ່າງ > (ຊື່, int)
ກຳນົດບູລິມະສິດ int ໃຫ້ກັບຊື່ໃນທຸກການຫັນປ່ຽນອອກຈາກສະຖານະເລີ່ມຕົ້ນ.

ຕົວຢ່າງ @ (ຊື່, int)
ກຳນົດບູລິມະສິດ int ໃຫ້ກັບຊື່ໃນທຸກການຫັນປ່ຽນທີ່ເຂົ້າສູ່ສະຖານະສຸດທ້າຍ.

ຕົວຢ່າງ $ (ຊື່, int)
ກຳນົດບູລິມະສິດ int ໃຫ້ກັບຊື່ໃນທຸກການຫັນປ່ຽນທີ່ມີຢູ່.

ຕົວຢ່າງ % (ຊື່, int)
ກຳນົດບູລິມະສິດ int ໃຫ້ກັບຊື່ໃນທຸກໄລຍະທີ່ຍັງຄ້າງຢູ່.

ກຸ່ມ 7:

ຕົວຢ່າງ * ຜະລິດດາວ kleene ຂອງເຄື່ອງຈັກ. ກົງກັບສູນ ຫຼືຫຼາຍກວ່າການຄ້າງຫ້ອງຂອງ
ເຄື່ອງຈັກ.

ຕົວຢ່າງ **
ການແຂ່ງຂັນດົນທີ່ສຸດ Kleene Star. ສະບັບຂອງ kleene star ນີ້ວາງຄວາມສໍາຄັນສູງກວ່າ
ຢູ່ໃນເຄື່ອງຫຼາຍກວ່າຫໍ່ປະມານແລະເລີ່ມຕົ້ນໃຫມ່. ຜູ້ປະກອບການນີ້ແມ່ນ
ເທົ່າກັບ ( ( expr ) $0 %1 )*.

ຕົວຢ່າງ ? ຜະລິດເຄື່ອງຈັກທີ່ຍອມຮັບເຄື່ອງທີ່ໃຫ້ຫຼືສາຍ null. ຜູ້ປະກອບການນີ້
ເທົ່າກັບ ( expr | '' ).

ຕົວຢ່າງ + ຜະລິດເຄື່ອງຈັກ concatenated ກັບ kleen star ຂອງຕົນເອງ. ກົງກັບຫນຶ່ງຫຼື
ການຄ້າງຫ້ອງຫຼາຍຂອງເຄື່ອງຈັກ. ຕົວປະຕິບັດການນີ້ແມ່ນເທົ່າກັບ ( expr . expr * ).

ຕົວຢ່າງ {n}
ຜະລິດເຄື່ອງທີ່ກົງກັບການຊໍ້າຄືນຂອງ expr.

ຕົວຢ່າງ {,n}
ຜະລິດເຄື່ອງຈັກທີ່ກົງກັນທຸກບ່ອນຈາກສູນຫາ n ການຊໍ້າຄືນຂອງ expr.

ຕົວຢ່າງ {n,}
ຜະລິດເຄື່ອງຈັກທີ່ກົງກັບ n ຫຼືຫຼາຍກວ່າການຄ້າງຫ້ອງຂອງ expr.

ຕົວຢ່າງ {n,m}
ຜະລິດເຄື່ອງຈັກທີ່ກົງກັບ n ຫາ m repetitions ຂອງ expr.

ກຸ່ມ 8:

! ຕົວຢ່າງ ຜະລິດເຄື່ອງທີ່ກົງກັບສະຕຣິງໃດນຶ່ງທີ່ບໍ່ກົງກັບເຄື່ອງທີ່ໃຫ້ມາ. ນີ້
operator ແມ່ນທຽບເທົ່າກັບ ( *extend - expr ).

^ ຕົວຢ່າງ ການປະຕິເສດລະດັບຕົວອັກສອນ. ກົງກັບຕົວອັກສອນຕົວດຽວທີ່ບໍ່ກົງກັບຕົວດຽວ
ເຄື່ອງຕົວອັກສອນ expr.

ກຸ່ມ 9:

( ຕົວຢ່າງ )
ບັງຄັບໃຫ້ມີຄວາມສຳຄັນກວ່າຕົວດຳເນີນການ.

VALUES ທີ່ມີຢູ່ IN CODE ບລັອກ


fc ລັກສະນະປະຈຸບັນ. ເທົ່າກັບ *p.

fpc ຕົວຊີ້ໄປຫາລັກສະນະປັດຈຸບັນ. ທຽບເທົ່າ p.

fcurs ຄ່າຈຳນວນເຕັມທີ່ສະແດງເຖິງສະຖານະປັດຈຸບັນ.

ftargs ຄ່າຈຳນວນເຕັມທີ່ສະແດງເຖິງສະຖານະເປົ້າໝາຍ.

ຮົ້ວ ( )
ຄ່າຈຳນວນເຕັມທີ່ເປັນຕົວແທນຂອງຈຸດເຂົ້າ .

ຖະແຫຼງການ ທີ່ມີຢູ່ IN CODE ບລັອກ


fhold; ຢ່າກ້າວໄປຂ້າງຫນ້າໃນລັກສະນະປະຈຸບັນ. ເທົ່າກັບ --p;

ເຟັກ ;
ກໍານົດລັກສະນະປະຈຸບັນເປັນອັນອື່ນ. ເທົ່າກັບ p = ( )-1;

fgoto ;
ໄປຫາເຄື່ອງທີ່ກໍານົດໂດຍ .

fgoto * ;
ໂດດໄປຫາຈຸດເຂົ້າທີ່ໃຫ້ໂດຍ . ການສະແດງຜົນຕ້ອງປະເມີນເປັນຈໍານວນເຕັມ
ຄ່າທີ່ເປັນຕົວແທນຂອງລັດ.

fnext ;
ກໍານົດລັດຕໍ່ໄປເປັນຈຸດເຂົ້າທີ່ກໍານົດໄວ້ໂດຍ . ຖະແຫຼງການຕໍ່ໄປ
ບໍ່ທັນທີທັນໃດເຕັ້ນໄປຫາລັດທີ່ລະບຸໄວ້. ລະຫັດການປະຕິບັດໃດໆປະຕິບັດຕາມ
ຖະແຫຼງການຖືກປະຕິບັດ.

fnext * ;
ຕັ້ງສະຖານະຕໍ່ໄປເປັນຈຸດເຂົ້າທີ່ມອບໃຫ້ . ການສະແດງອອກຕ້ອງ
ປະເມີນເປັນຄ່າຈຳນວນເຕັມທີ່ເປັນຕົວແທນຂອງລັດ.

ໂທຫາ ;
ໂທຫາເຄື່ອງທີ່ກໍານົດໂດຍ . fret ຕໍ່ໄປຈະເຕັ້ນໄປຫາເປົ້າຫມາຍຂອງ
ການ​ປ່ຽນ​ແປງ​ທີ່​ການ​ປະ​ຕິ​ບັດ​ໄດ້​ຖືກ​ຮຽກ​ຮ້ອງ​.

ໂທຫາ * ;
ໂທຫາຈຸດເຂົ້າທີ່ໃຫ້ໂດຍ . fret ຕໍ່ໄປຈະເຕັ້ນໄປຫາເປົ້າຫມາຍຂອງ
ການ​ປ່ຽນ​ແປງ​ທີ່​ການ​ປະ​ຕິ​ບັດ​ໄດ້​ຖືກ​ຮຽກ​ຮ້ອງ​.

fret; ກັບຄືນສູ່ສະຖານະເປົ້າຫມາຍຂອງການຫັນປ່ຽນທີ່ fcall ສຸດທ້າຍໄດ້ເຮັດ.

fbreak;
ຊ່ວຍປະຢັດສະຖານະປະຈຸບັນແລະທັນທີທັນໃດແຕກອອກຈາກເຄື່ອງ.

CREDITS


Ragel ໄດ້ຖືກຂຽນໂດຍ Adrian Thurston[email protected]>. ຜົນໄດ້ຮັບຂອງ Objective-C
ປະກອບສ່ວນໂດຍ Erich Ocean. ຜົນຜະລິດ D ປະກອບສ່ວນໂດຍ Alan West. ຜົນຜະລິດ Ruby ປະກອບສ່ວນໂດຍ
Victor Hugo Borja. ການສ້າງລະຫັດ C Sharp ປະກອບສ່ວນໂດຍ Daniel Tang. ການປະກອບສ່ວນເພື່ອ
ການສ້າງລະຫັດ Java ໂດຍ Colin Fleming. ການສ້າງລະຫັດ Go ປະກອບສ່ວນໂດຍ Justine Tunney.

ໃຊ້ ragel ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net


ເຊີບເວີ ແລະສະຖານີເຮັດວຽກຟຣີ

ດາວໂຫຼດແອັບ Windows ແລະ Linux

  • 1
    KompoZer
    KompoZer
    KompoZer ເປັນບັນນາທິການ HTML ທີ່ໃຊ້ wysiwyg
    ຖານຂໍ້ມູນ Mozilla Composer. ເປັນ
    ການພັດທະນາຂອງ Nvu ໄດ້ຖືກຢຸດເຊົາ
    ໃນປີ 2005, KompoZer ແກ້ໄຂຂໍ້ບົກພ່ອງຫຼາຍຢ່າງແລະ
    ເພີ່ມ f...
    ດາວໂຫລດ KompoZer
  • 2
    ດາວໂຫຼດ Manga ຟຣີ
    ດາວໂຫຼດ Manga ຟຣີ
    The Free Manga Downloader (FMD) ເປັນ
    ຄໍາຮ້ອງສະຫມັກແຫຼ່ງເປີດທີ່ຂຽນໃນ
    Object-Pascal ສໍາລັບການຄຸ້ມຄອງແລະ
    ການດາວໂຫຼດ manga ຈາກເວັບໄຊທ໌ຕ່າງໆ.
    ນີ້ແມ່ນແວ່ນ...
    ດາວໂຫຼດ Manga ດາວໂຫຼດຟຣີ
  • 3
    Aetbootin
    Aetbootin
    UNetbootin ອະນຸຍາດໃຫ້ທ່ານສ້າງ bootable
    Live USB drives ສໍາລັບ Ubuntu, Fedora, ແລະ
    ການແຈກຢາຍ Linux ອື່ນໆໂດຍບໍ່ມີ
    ການເຜົາໄຫມ້ CD. ມັນເຮັດວຽກຢູ່ໃນ Windows, Linux,
    ແລະ ...
    ດາວໂຫລດ UNetbootin
  • 4
    Dolibarr ERP - CRM
    Dolibarr ERP - CRM
    Dolibarr ERP - CRM ແມ່ນໃຊ້ງ່າຍ
    ຊຸດຊອບແວແຫຼ່ງເປີດ ERP ແລະ CRM
    (ດໍາເນີນການກັບເຄື່ອງແມ່ຂ່າຍເວັບ php ຫຼືເປັນ
    ຊອບ​ແວ standalone​) ສໍາ​ລັບ​ທຸ​ລະ​ກິດ​,
    ພື້ນຖານ...
    ດາວໂຫລດ Dolibarr ERP - CRM
  • 5
    SQuirreL SQL Client
    SQuirreL SQL Client
    SQuirreL SQL Client ເປັນ SQL ແບບກຣາຟິກ
    ລູກຄ້າຂຽນໃນ Java ທີ່ຈະອະນຸຍາດໃຫ້
    ທ່ານສາມາດເບິ່ງໂຄງສ້າງຂອງ JDBC ໄດ້
    ຖານ​ຂໍ້​ມູນ​ທີ່​ສອດ​ຄ້ອງ​ກັນ​, ທ່ອງ​ຂໍ້​ມູນ​ໃນ​
    ໂຕະ...
    ດາວໂຫລດ SQuirreL SQL Client
  • 6
    ວົງເລັບ
    ວົງເລັບ
    ວົງເລັບເປັນແຫຼ່ງເປີດທີ່ທັນສະໄໝ ແລະບໍ່ເສຍຄ່າ
    ຕົວແກ້ໄຂຂໍ້ຄວາມທີ່ສ້າງຂຶ້ນໂດຍສະເພາະສໍາລັບເວັບ
    ການພັດທະນາ. ຂຽນໃນ HTML, CSS, ແລະ
    JavaScript ກັບເຄື່ອງມືສາຍຕາທີ່ສຸມໃສ່ແລະ
    ກຽມ...
    ດາວໂຫລດວົງເລັບ
  • ເພີ່ມເຕີມ »

Linux ຄຳ ສັ່ງ

Ad