2014-02-14 63 views
2

我想在下面的方式如何定義包含反斜槓(「」)字符的紅寶石數組?

A = ["\"] 

我現在困在這裏小時來定義紅寶石的數組。嘗試了幾種可能的單引號和雙引號組合,即前斜槓和後斜槓。唉!

我也看到這個鏈接:here 但無法理解如何解決我的問題。

從這個什麼我需要做的

除了是 - 1.閱讀由字符的文件字符 2.本文件包含「\」字符 3.我想要做的事(這是我能夠做到!)如果我的陣列A包含此反斜槓

A.includes?("\") 

任何幫助表示讚賞!

回答

5

有一些字符是特殊的,需要轉義。 就像當你定義一個字符串

str = " this is test string \ 
and this contains multiline data \ 
do you understand the backslash meaning here \ 
it is being used to denote the continuation of line" 

在一個雙引號「」中定義的字符串,如果你需要有一個雙引號你會如何鬥呢? 「\」「,這就是爲什麼當你在字符串中加一個反斜槓時,你要告訴解釋器你將使用一些特殊字符並且被反斜槓轉義,所以當你從文件中讀取一個」\「時,它將被讀取如

char = "\\" 
char.length # => 1 

「\」到這個紅寶石字符串,我希望這有助於;)

+0

是的同意@naveen – Santosh

1

您可以使用反斜線反斜線雙引號,如:

["\\"].include?("\\") 
+0

怎麼會是[「\\」]等價於[「\」] ??我不明白這一點! –

1

你的問題是不是Array,你的問題確實涉及逃避字符串中的特殊字符的序列。由於\這個字符很特殊,所以你需要先用一個前導的反斜槓來加上它(避開它),像這樣。

"\\" 

您還應該重新閱讀您的鏈接和section on escape sequences