Ruby regexp中的语法错误包含@
我试图将字符串中出现的特殊字符(如Ruby regexp中的语法错误包含@,ruby,regex,ruby-on-rails-4,Ruby,Regex,Ruby On Rails 4,我试图将字符串中出现的特殊字符(如/,:)分别替换为*/*,*:*) str.gsub!(/([;.\\/?:@&=+$,{}|^\[\]`<>#%"'])/, '*\1*') 我试图将该regexp定义为一个字符串,并使用regexp.quote(…)对其进行转换,但没有成功。如有任何建议,将不胜感激 您只是忘记在正则表达式中转义/符号: str.gsub!(/([;.\\\/?:@&=+$,{}|^\[\]`<>#%"'])/, '*\1*')
/
,:
)分别替换为*/*
,*:*
)
str.gsub!(/([;.\\/?:@&=+$,{}|^\[\]`<>#%"'])/, '*\1*')
我试图将该regexp定义为一个字符串,并使用
regexp.quote(…)
对其进行转换,但没有成功。如有任何建议,将不胜感激 您只是忘记在正则表达式中转义/
符号:
str.gsub!(/([;.\\\/?:@&=+$,{}|^\[\]`<>#%"'])/, '*\1*')
^
str.gsub!(/([;.\\\/?:@&=+$,{}|^\[\]`#%"'])/, '*\1*')
^
否则,应在
@
之后输入一个有效的变量名。您只是忘记在正则表达式中转义/
符号:
str.gsub!(/([;.\\\/?:@&=+$,{}|^\[\]`<>#%"'])/, '*\1*')
^
str.gsub!(/([;.\\\/?:@&=+$,{}\\[\]`\\%'])/,'*\1*'))
^
否则,需要在
@
之后有一个有效的变量名。您只是忘记了转义正则表达式中的/
符号:str.gsub!(/([;。\\\/?:@&=+$,{}124\\[\]`\\%']/,'*\ 1*')
。在您的情况下,RoR在@
之后需要一个有效的变量名。您只是忘记了转义正则表达式中的/
符号:str.gsub!(/([;。\\\\/:&=+$,{124\\\\\\\\\\\\\[]%],{35\\\\\\\\\\\\\]%],
,)。在您的情况下,RoR要求在@
之后有一个有效的变量名。我建议在字符集中重新排列转义反斜杠和转义斜杠,以便于阅读和理解。我建议在字符集中重新排列转义反斜杠和转义斜杠,以便于阅读和理解。