我是新來的語言。正則表達式匹配紅寶石
我試圖提取所有字符,直到轉義字符(\ r)。
我試圖
text = "abcde\r"
text.match(/(.*)(\r)/)
我試着用GSUB和GSUB一樣!沒有任何工作。
我是新來的語言。正則表達式匹配紅寶石
我試圖提取所有字符,直到轉義字符(\ r)。
我試圖
text = "abcde\r"
text.match(/(.*)(\r)/)
我試着用GSUB和GSUB一樣!沒有任何工作。
您可以使用String#slice
傳遞正則表達式和匹配來獲取。 1
代表第一個(在這種情況下是唯一的)比賽。
text = "abcde\r"
text.slice(/(.*)\r/, 1)
=> "abcde"
謝謝!看起來我對irb終端有問題。它沒有打印輸出。 – JmG 2014-11-21 18:48:09
如果你碰巧處理從一個文件中的指定的情況下,你要刪除的行結束,您可以使用chop
或chomp
。例如:
require 'pp'
lines = [
"hello",
"there\r",
"how\r\n",
"are you?"
]
lines.each do |line|
pp line
pp line.chomp
puts '---'
end
結果:
"hello"
"hello"
---
"there\r"
"there"
---
"how\r\n"
"how"
---
"are you?"
"are you?"
---
小心使用'chop',因爲它會不加區分地刪除最後一個字符:''foo'.chop#=>「fo」'。 'rstrip'和'chomp'都是最常用的方法。 – 2014-11-21 21:00:57
很酷。謝謝。這很有幫助 – JmG 2014-11-21 21:40:16
哪裏是你的代碼的其餘部分? – NullUserException 2014-11-21 18:45:12
'\ r'不是「*轉義字符」,它是「*一個*轉義字符」。術語很重要。 – 2014-11-21 20:58:23