home *** CD-ROM | disk | FTP | other *** search
/ Archive Magazine 1996 / ARCHIVE_96.iso / discs / shareware / share_46 / fre / re_formal < prev   
Text File  |  1992-04-21  |  2KB  |  82 lines

  1. re ::-              expr*
  2. any_char ::-          `.'
  3. c_escape_sequence ::-      literal_c_escape
  4.             | octal_c_escape
  5.             | hex_c_escape
  6. charset ::-          set
  7.             | literal
  8.             | literal `-' literal
  9. command ::-          literal_command
  10.             | compound_command
  11.             | set
  12.             | `\' literal_command
  13.             | `[' charset* `]'
  14.             | literal
  15. compound_command ::-      start_string
  16.             | end_string
  17.             | start_word
  18.             | end_word
  19.             | word_boundary
  20.             | start_symbol
  21.             | end_symbol
  22.             | symbol
  23.             | word
  24. end_line ::-          `$'
  25. end_string ::-          `\''
  26. end_symbol ::-          `\╗'
  27. end_word ::-          `\>'
  28. expr ::-          command operator*
  29.             | `(' expr? ')'
  30.             | `\{' expr? `\}'
  31.             | memory
  32. hex_c_escape ::-      `x' hex_digit hex_digit?
  33. hex_digit ::-          [0-9a-fA-F]
  34. initial_symbol_char ::-      `\s'
  35. literal ::-          `\' c_escape_sequence
  36.             | <char>
  37. literal_c_escape ::-      `a'
  38.             | `b'
  39.             | `f'
  40.             | `n'
  41.             | `r'
  42.             | `t'
  43.             | `v'
  44. literal_command ::-      any_char
  45.             | start_line
  46.             | end_line
  47.             | not
  48. many ::-          `+'
  49. memory ::-          `\' [1-9]
  50. not ::-              `~' command
  51. octal_c_escape ::-      `0' octal_digit? octal_digit?
  52. octal_digit ::-          [0-7]
  53. operator ::-          repeat
  54.             | many
  55.             | optional
  56.             | or
  57. optional ::-          `?'
  58. or ::-              `|' re
  59. repeat ::-           `*'
  60. set ::-              word_char
  61.             | symbol_char
  62.             | initial_symbol_char
  63. start_line ::-          `^'
  64. start_string ::-      `\`'
  65. start_symbol ::-      `\½'
  66. start_word ::-          `\<'
  67. symbol ::-          `\S'
  68. symbol_char ::-          `\y'
  69. word ::-          `\W'
  70. word_boundary ::-      `\@'
  71.  
  72.  
  73. KEY
  74. ===
  75.  
  76.  
  77. (symbol) ?        = 0 or 1 times
  78. (symbol) *        = 0 or many times
  79. (symbol) +        = 1 or many times
  80. (symbol) | (symbol)    = either
  81. []            = a range of characters
  82.