2021|01|
2007-09-27 [長年日記]
_ [プログラミング] Ruby 正規表現の行末
以下のようにファイルを一行ずつ読み込み、正規表現に「$」を使おうとしたが、予想に反しなぜかマッチしなくてしばらくはまった。
File.open(filename, 'r'){ |f| while l = f.gets if l =~ /^<LI>.*<\/LI>$/ puts l end end }
原因は文字列の最後に改行があったことだったので、次のように変更した。
File.open(filename, 'r'){ |f| while l = f.gets.strip if l =~ /^<LI>.*<\/LI>$/ puts l end end }
[ツッコミを入れる]