File tree Expand file tree Collapse file tree 2 files changed +26
-3
lines changed Expand file tree Collapse file tree 2 files changed +26
-3
lines changed Original file line number Diff line number Diff line change @@ -105,7 +105,26 @@ def builtins
105105 rule %r/\) / , Punctuation , :pop!
106106 rule %r/[(,]/ , Punctuation
107107 rule %r/\s +/ , Text
108- rule %r/"/ , Str ::Regex , :regex
108+ rule %r/'/ , Str ::Regex , :regex_sq
109+ rule %r/"/ , Str ::Regex , :regex_dq
110+ end
111+
112+ state :regex_sq do
113+ rule %r(') do
114+ token Str ::Regex
115+ goto :regex_end
116+ end
117+
118+ mixin :regex
119+ end
120+
121+ state :regex_dq do
122+ rule %r(") do
123+ token Str ::Regex
124+ goto :regex_end
125+ end
126+
127+ mixin :regex
109128 end
110129
111130 state :regex do
@@ -151,13 +170,15 @@ def builtins
151170 end
152171
153172 state :sqs do
173+ rule %r(\\ ') , Str ::Escape
154174 rule %r(') , Str ::Single , :pop!
155- rule %r([^']+) , Str ::Single
175+ rule %r([^'\\ ]+) , Str ::Single
156176 end
157177
158178 state :dqs do
179+ rule %r(\\ ") , Str ::Escape
159180 rule %r(") , Str ::Double , :pop!
160- rule %r([^"]+) , Str ::Double
181+ rule %r([^"\\ ]+) , Str ::Double
161182 end
162183 end
163184 end
Original file line number Diff line number Diff line change 258258acc = Account .create (1000 )
259259acc :withdraw (100 )
260260
261+ -- gsub examples
261262if
262263 url = url :gsub (" ^['\" ]" , " " ):gsub (" ['\" ]$" , " " )
264+ local pattern = attr_name .. ' =[\' "]' .. attr_value :gsub (' ([%.%+%-%*%?%[%]%^%$%(%)%%])' , ' %%%1' ) .. ' [\' "]'
263265end
You can’t perform that action at this time.
0 commit comments