3
私はデータフォーマットを変更するためにrubyでファイルを解析しています。私は一時的に変数に格納する3つのマッチグループを持つ正規表現を作成しました。私はすべてが無駄であるので、マッチを保存するのに問題があります。正規表現をルビに保存しますか?
これまで私が読んできたことから、これまで私が持っていたことがあります。
regex = '^"(\bhttps?://[-\w+&@#/%?=~_|$!:,.;]*[\w+&@#/%=~_|$])","(\w+|[\w._%+-][email protected][\w.-]+\.[a-zA-Z]{2,4})","(\w{1,30})'
begin
file = File.new("testfile.csv", "r")
while (line = file.gets)
puts line
match_array = line.scan(/regex/)
puts $&
end
file.close
end
ここでは、私がテストに使用しているいくつかのサンプルデータを示します。ちょうどあなたの正規表現リテラルとして「正規表現」の文字列を使用しています
match_array = line.scan(/regex/)
、あなたのregex
変数には何がありません。
"https://mail.google.com","Master","password1","","https://mail.google.com","",""
"https://login.sf.org","[email protected]","password2","https://login.sf.org","","ctl00$ctl00$ctl00$body$body$wacCenterStage$standardLogin$tbxUsername","ctl00$ctl00$ctl00$body$body$wacCenterStage$standardLogin$tbxPassword"
"http://www.facebook.com","Beast","12345678","https://login.facebook.com","","email","pass"
"http://www.own3d.tv","Earth","passWOrd3","http://www.own3d.tv","","user_name","user_password"
これは動作しません、
LF4
ありがとうございました。私は言及されたサイトのどれも検索していないか、または例がRegexp.newを使用しなければならないことを示したすべての検索に驚いています。それがそれでした。再度、感謝します。 – LF4
@ LF4:あなたはCSVパーサーと3つの簡単な正規表現を使うべきだと思います。いずれにしても、複雑な正規表現では(正しいタイプのコースの)変数に入れ、 'scan'呼び出しでその変数を参照するのが正しい方法でした。 –
CSVパーサーを使用するほうがずっと簡単でした。なぜ私は正規表現をする代わりにそれを調べることを考えなかったのか分かりません。 :)すべての助けをありがとう。 – LF4