私のコードの出力に問題があります。 何が起こっているかを調べるために、out、in、reoutを追加しました... 空行を印刷しないように、line.length!= 0と行!= 0を追加しようとしましたが、動作しません...ここ が出力されます。Rubyによるテキストファイルへの出力
Going to open 'TextFile.rtf'
out
in
re-out
out
in
re-out
out
in
re-out
out
in
re-out
out
in
re-out
out
in
re-out
out
in
re-out
out
in
66666666
re-out
out
in
99999999
re-out
out
in
re-out
out
in
25252525
re-out
out
in
11111111
re-out
マイテキストファイル:
BABA66666666 Hd12
HEAD99999999 HDAS
HEAD25252525 A1234
SSSS11111111 No12
マイコード:
def HID_num(str)
matchtemp = ""
temp = str.split(" ")
temp.map! do |element|
matches = element.match(/\A[A-Z]{4}(\d{8})\z/)
next unless matches
matchtemp = matches[1]
end.compact
puts matchtemp
end
if ARGV.length != 1
puts "We need exactly one parameter. The name of a file."
exit;
end
filename = ARGV[0]
puts "Going to open '#{filename}'"
fh = open filename
while (line = fh.gets)
puts "out"
if(line.length != 0)
puts "in"
HID_num(line)
end
puts "re-out"
end
fh.close
は助けてくれてありがとう!
あなたが期待している出力は何ですか**?私はあなたの質問が何であるか分かりません。 –
IDが正しいかどうかを確認すると、4大文字の英字、8文字の後ろになります。有効な8桁の数字が返されます。 –
"それは機能しません"というエラーメッセージは、私たちがあなたを助けるほど正確ではありません。 *何がうまくいかない? *どのように動作しませんか?あなたのコードにはどんな問題がありますか?エラーメッセージが表示されますか?エラーメッセージとは何ですか?結果はあなたが期待している結果を得ていないのですか?あなたはどんな結果を期待していますか、そしてなぜ、あなたはどのような結果を得ていますか、そしてその二つの違いは何ですか?あなたが観察している行動は、望ましい行動ではありませんか?望ましい行動とは何か、なぜ行動が観察され、どのように違うのですか? –