訳の正確性を保証するものではありませんので必要に応じて原文であるEcma InternationalのECMA-262にある ECMA-262.pdf ( ECMA-262 5.1 Edition )を参照下さい。
訳:2012年04月 webzoit.net
RegExpコンストラクタは、パターン文字列について次の文法を適用します。 文法が、パターンの式として文字列を解釈できない場合、エラーが発生します。
【構文】 Pattern :: Disjunction Disjunction :: Alternative Alternative | Disjunction Alternative :: [empty] Alternative Term Term :: Assertion Atom Atom Quantifier Assertion :: ^ $ \ b \ B ( ? = Disjunction ) ( ? ! Disjunction ) Quantifier :: QuantifierPrefix QuantifierPrefix ? QuantifierPrefix :: * + ? { DecimalDigits } { DecimalDigits , } { DecimalDigits , DecimalDigits } Atom :: PatternCharacter . \ AtomEscape CharacterClass ( Disjunction ) ( ? : Disjunction ) PatternCharacter :: SourceCharacter ^ $ \ . * + ? ( ) [ ] { } | 以外 AtomEscape :: DecimalEscape CharacterEscape CharacterClassEscape CharacterEscape :: ControlEscape c ControlLetter HexEscapeSequence UnicodeEscapeSequence IdentityEscape ControlEscape :: f n r t v の内の1つ ControlLetter :: a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z の内の1つ IdentityEscape :: SourceCharacterであってIdentifierPartでない <ZWJ> <ZWNJ> DecimalEscape :: DecimalIntegerLiteral [lookahead ? DecimalDigit] ( ?部は、 ∈の否定文字) CharacterClassEscape :: d D s S w W の内の1つ CharacterClass :: [ [lookahead ? {^}] ClassRanges ] ( ?部は、 ∈の否定文字) [ ^ ClassRanges ] ClassRanges :: [empty] NonemptyClassRanges NonemptyClassRanges :: ClassAtom ClassAtom NonemptyClassRangesNoDash ClassAtom - ClassAtom ClassRanges NonemptyClassRangesNoDash :: ClassAtom ClassAtomNoDash NonemptyClassRangesNoDash ClassAtomNoDash - ClassAtom ClassRanges ClassAtom :: - ClassAtomNoDash ClassAtomNoDash :: \ (バックスラッシュ)、] (右角ブラケット)、- (ハイフン)ではない SourceCharacter \ ClassEscape ClassEscape :: DecimalEscape b CharacterEscape CharacterClassEscape