検索結果

キーワード: ‘正規’
1813 letters | 2091 views | コメントする

 自分で正規表現クラスを作るのは無理だと言い切っちゃうくらいだから、そもそも正規表現に対する理解もあまりしてなくて、結局誰かの作った物を利用するしかない。従来のx86版真魚では鬼車のDLLを使っていたが、これも2010年で更新が止まっているっぽい。そして、鬼車の改変版として鬼雲ってのをよそで出してて、ただしmakefileはwin32しかついてこないみたい。  bregonig.dllって言うのが出てて、昔から多くのテキストエディタで利…続きを読む

さて、久しぶりにお題が出ている。 今回は正規表現が絡むので、メモ帳での動作確認は出来ないが、 幸いにも秀丸とEmEditor Freeが同じ動作をしたので、これを正解と思って良いだろう。 何をやるのかというと、正規表現で行頭を表す^(ヘの字記号)の扱いだ。 本題は置換なのだが、内部では検索して引っ掛かった部分を置き換えてるわけだから、 置換だけじゃなくて検索の動作も見てみた。 この時点で既に秀丸とEmEditorは同じ動作なわけだから納…続きを読む

関連本を読んで強く感じたんだけどさ、正規表現に正規の物なんてないね。 でも、こう書いたらこう動いて欲しいってのの標準みたいなのはあるな。 で、今使ってるTRegExprは、検索に関してはそういう標準は十分満たしてる感じ。 置換は¥1~¥9で$1~$9と同じ動作をするように変更すれば十分って感じ。 十分どころか、真魚のくせにっていうくらいたいそうなことが出来る。 今できない機能に今後対応するかどうかについては、 面倒くさいからやりたくない…続きを読む

落ちる話からは離れて、いったい今実装している正規表現の何が不満かという話。 あたしゃ正規表現自体普段使わないし詳しくないので、一口に正規表現と言っているが、 実際はどんな書き方が通るのかが、物によってもバージョンによっても違うらしい。 今使ってるTRegExprが、一般に正規表現と言われるものに比べて、 十分な実装がされているのかされていないのか、その判断すら難しいほど無知なんだが、 ウチにある正規表現について書かれた本を見ると、ここが…続きを読む

さて、8000文字テストで落ちないエディタを三つあげたわけだが、 その三つとも、80000文字テストを乗り切ることは出来なかった。 EmEditorの限界は74483文字で、それ以上だと「見つかりませんでした」が出るか、 条件は不明だが「Too Big」とかなんとかっていうダイアログが出るかする。 落ちるよりはヒットしない方が全然マシ。 萌ディタは、80000文字の貼り付けが出来なかくて「がっかり」ダイアログ。 仕方ないので8000文字…続きを読む

最初は、ヘルプに遅いと書いてあるから速くできるんじゃないかとか、 まだ対応してない物を自前で対応できないかとか、 そういうつもりで正規表現ライブラリの中身を検証していたはずだったが、 途中からはアプリが落ちるか落ちないかの話題に変ってしまったな。 で、一応解決したよ。現在は、8000どころか80000文字でも落ちないようになった。 もちろん、32bitを超える数字のケアはしてないので、そこであふれるだろうが。 32bit以上のケアしない…続きを読む

アプリが落ちる話なので、言いがかりだと言われないように、やり方を明確にしておく。 -(半角のマイナス)を8000文字入力する。コピペでも良い。 なぜ8000かというと、欠陥のあるライブラリでも数百ぐらいだとまだ耐えるからだ。 マイナスには特に意味はないが、改行が含まれると検索出来ない物もあるのでダメ。 で、8000文字入力したら先頭1文字目に入力位置をあわせ、 正規表現で(.|¥n)+を検索する。あえて全角で書いたがもちろん半角で。 す…続きを読む

難しい言葉で言うと再帰。 正規表現の検索では、普通の検索と違ってたくさんの枝分かれが起こる。 その分かれた枝からさらに別の枝分かれが起こる。 全部の枝を検証して最長一致を求めるっていう事をやらせるために、 TRegExprは再帰っていう方法を使っている。 マッチしているかどうかを判断すべきメソッドは、枝分かれ前の現在の枝しか評価せず、 枝分かれの分岐点からは、それぞれの枝について自分と同じ仕事をするメソッドに託す。 それれぞれの枝がさら…続きを読む

ショック。 やっぱり自分で使うライブラリは、ソースコード全部把握してから使わなきゃダメね。 正規表現では+や*とかを使って、ものすごく長い範囲にヒットさせる事が出来るわけだが、 TRegExpで、ものすごく長い文字列にヒットさせようとすると、 オーバーフローが起こって何の警告も出さずにアプリが落ちる事がわかった。 たぶんさ、足し算とか引き算とかで桁があふれた場合は警告出るんだろうね。 今回のオーバーフローは、正規表現ライブラリ内のとある…続きを読む

出来れば自分で書きたくないので、利用できる物を探してみるのだが、 Delphiであると言うことがどうしても足かせになる。 .NETの正規表現が逆方向も検索できて大変よろしいのだがな。 ともかく、Delphiってのはユニコードがない時代に作られたものなので、 Delphi向けの正規表現といえばSJISしか検索できないとか日本語ダメとかで、 逆にユニコードの検索が出来るとDelphiから利用できなかったりで、 Delphiかつユニコードな正…続きを読む

ずっと仕様だからしょうがないとか思ってあきらめてた部分は多々あるわけだが、 その仕様だからってのは、仕様じゃなくすることは出来るけど面倒すぎるって事ばかり。 で、たまたまやる気が持続したので、仕様を打破する更新とか続いたわけだ。 もうさ、不満があったら面倒でも修正しちゃうって流れに完全にシフトしちゃったんだけど、 知識不足でどうしても手が出せないのが正規表現部分。 真魚は作者と嫁が使うために作られた物であり、 作者も嫁もよくわかっていな…続きを読む

宅トレでパワーブロックの類似品を愛用している。https://amzn.to/48EXAxjもともとはスクリューカラーのダンベルも所有し、子供が小さい頃に危険を感じて片付けた。片付けただけなので出してくれば使えるにもかかわらず、新しくパワーブロックを買った。やっぱりスクリュー式だとプレートの着脱やら外したプレートの片付けやらが面倒だった。そういうのを全て解消しちゃうのがパワーブロック型で、これがないと宅トレも成立してない。が、弱点はプレ…続きを読む

iPhone11を3年使って互換バッテリーに交換し、さらに1年使った。正規の交換もすぐ近所で出来るんだが、脱獄してるからAppleに触られたくなかった。脱獄の便利さが捨てられず、脱獄できないなら新しいiPhoneなんて欲しくない。このまま脱獄済みiPhoneを何年でも使って行けたら理想だ。しかしなんせiOS14.3で止めてるから、使えないアプリがチラホラがあり不安を感じる。もし今使ってるアプリまでもが動作しなくなったら、さすがに買い換え…続きを読む

かれこれ何十年も、電動歯ブラシはブラウンを使っている。ブラウンからブラウンに買い換えてきた。最初に買った頃、なぜブラウンにしたかは記憶が曖昧だ。おそらく国産メーカーは「電気で動いてるだけの電動」で、手磨きより優れてる印象がなかった。ブラウンは初回使用時から手磨きでは実現できないツルツルを体験し、手放せない物となった。ただ、現在のあたしは虫歯や歯周病に悩まされ、歯科でメンテナンスや治療を欠かさない。歯ブラシが優秀ならこうはならないのではな…続きを読む

自分で書いたこの日記によると、あたしはどうやら2010年からハゲの進行を防いでいるらしい。近頃は薬であまりにもハゲを阻害しすぎると更年期的な症状が出るのかと疑っている。だので以前はハゲより前立腺のためにやや多めに飲んでた物を、最低限の利用にまで減らした。同じ薬なのにハゲ用は1mgで、前立腺用は5mgの錠剤が、価格差は5倍じゃないくらいで売ってる。あたしは5mgの100錠入りを5000円程度で買ってて、近年は錠剤を4分割して飲んでいる。4…続きを読む