2011-08-29 153 views
1

我的代码是这样的:如何使用红宝石方法.match逃避单引号中的字符串

description = contents.match(/===========(.*?)What's New in this Version/m)[1].strip 

的代码运行正常,但现在一切后,单引号是蓝色的,我需要一个单引号结束它。但是我会在哪里放置它,或者我将如何逃脱它?我试着在单引号前加一个反斜杠,但这并没有改变任何东西。

+2

问题在于你的编辑器的语法高亮。你在用什么编辑器? –

+0

我正在使用Xcode。 – thisiscrazy4

+0

是的,你是对的!我在vim中打开它,并且所有内容都是正确的颜色编码。现在我只需要弄清楚如何更改Xcode中的设置。 – thisiscrazy4

回答

1

要解决Xcode的语法高亮显示的缺点,你可以使用该字符的八进制转义代码替换单引号PS。你也可以缩短你的正则表达式的开始:

/={11}(.*?)What\047s New in this Version/m 
+0

伟大的提示,谢谢! – thisiscrazy4

0

您通常使用的反斜杠“\”特殊字符进行转义:

/===========(.*?)What\'s New in this Version/m 
+0

就像我在问题中所说的那样,我尝试过,但它没有改变任何东西。它不会关闭单引号。 – thisiscrazy4

0

这似乎是一个Xcode错误。你可以试着和周围得到这个:

/===========(.*?)What\047s New in this Version/m 

/===========(.*?)What.s New in this Version/m 
# fix here ----------^