/ 最近 .rdf 追記 編集 設定 本棚

脳log[20150926]



2015年09月26日 (土) [Ruby] String#splitした結果の配列のうち、末尾から連続する空文字列の要素は取り除かれるというおせっかいルール(※おそらくワンライナーみたいなやっつけ仕事向けの仕様)が存在する。「脳log[20060822p01] 1.8系でもはまる、String#split」なので "".split(/,/).length が 0 になるのは知っていれば不思議ではない。でも、"".split(/,/,-1).length が 0 になるのは説明できない。■割り切った単純さ(スコープとか数値とか連想配列とか)が好きな JavaScriptにも特別ルールが存在する。「脳log[20080221p01] JavaScriptの、空文字列にまつわる微妙な点 (String.split(), RegExp.lastIndex)」■正規表現に親しむと幅を持たないアンカーという概念を避けて通れないから、インデックスを文字の左右に置くようになる。1文字目がインデックス範囲(0-1)で、範囲(1-1)はその直後の文字間。空文字列もちゃんと存在して指し示すことができるから、無視するなんてアリエナイという考えになる。■あとは未定義と空文字列を混同しない程度にデータベースをかじって NULLに親しんでいて欲しい。「@2013-11-09 ECMAScript(3rd&5th ed.)の、Rubyとは異なる、残念正規表現仕様(20131101p01.12)