くろねこ研究所はGeeklogと言うCMSを使って作られている。
このCMSは使いやすいのか?(*'へ'*) ンーちょっと不明だけど使い続けている。
2025年10月28日(火) 08:40 JST
/**
* マイナス符号付小数点チェックを行います。
* ・パターンマッチ 0~9、"-"、"."
* ・パターンマッチ "-","."のみはNG
* ・マイナス符号の数 0 or 1
* ・小数点の数 0 or 1
* ・整数部の桁数チェック
* ・小数部の桁数チェック
*
* 例)整数部 3, 小数部 2の場合
* -123 --> OK
* 123 --> OK
* 123.45 --> OK
* -123.45 --> OK
* 1.2 --> OK
* - --> NG
* 123- --> NG
* --123 --> NG
* 1234.56 --> NG
* 123.456 --> NG
* . --> NG
* .123 --> NG
* 123. --> NG
* -. --> NG
*
* @param argValue チェック対象文字列
* @param argIntKetasu 整数部の入力可能桁数
* @param argDecimalKetasu 小数部の入力可能桁数
* @return チェックOKの場合はtrue、
* チェックNGの場合はfalse
*/
function isMinusDecimal(argValue, argIntKetasu, argDecimalKetasu)
{
var minusFlg = false;
var decFlg = false;
if (argValue.match(/[^0-9|^\-|^.]/g))
{
// パターンマッチ 0~9,"-","."以外はNG
return false;
}
if (argValue.match(/[^\-|^.]/g))
{
}
else
{
// パターンマッチ "-","."のみはNG
return false;
}
// 小数点の数を取得する
var count = 0;
for (var i = 0; i < argValue.length; i++)
{
if (argValue.charAt(i) == ".")
{
decFlg = true; count++;
}
}
if (2 <= count)
{
// "."が2つ以上入力されている場合はNG
return false;
}
// "-"の入力個数を取得する
count = 0;
for (i = 0; i < argValue.length; i++)
{
if (argValue.charAt(i) == "-")
{
minusFlg = true;
count++;
}
}
if (2 <= count || (count == 1 && argValue.charAt(0) != "-"))
{
// "-"が2つ以上入力されている場合はNG
// "-"が入力されていて、かつ先頭に"-"がない場合はNG
return false;
}
// 小数点以下のチェック
if (decFlg)
{
// 小数点以下の桁数チェック
var idx = argValue.lastIndexOf(".");
var decimalPart = argValue.substring(idx);
// 小数点以下の桁数を取得する
var length = decimalPart.length - 1;
if (length == 0)
{
// 小数点以下の入力がない場合はNG
return false;
}
if (argDecimalKetasu < length)
{
// 小数点以下の桁数がオーバーしている場合はNG
return false;
}
}
// 整数部の桁数チェック
var intPart = "";
length = 0;
if (decFlg)
{
// 小数点が入力された場合
intPart = argValue.substring(0, argValue.indexOf("."));
}
else
{
intPart = argValue;
}
length = intPart.length;
if (minusFlg)
{
// マイナスが入力された場合は-1
length--;
}
if (argIntKetasu < length)
{
// 整数の桁数がオーバーしている場合はNG
return false;
}
return true;
}
プログラムを作っていると変数名などの名称を考えるのに結構苦労することが多い。基本は英語をベースに命名するのであるが、一つの日本語に対して複数の英単語が存在することも少なくない。その場合にはどの英単語を選択するのか頭を悩ませることもこれまた少なくない(選択は英語でchoose, selectがあげられるが、選ぶとしたらこの場合はchooseで良いのだろうか?という悩み)。このような同様の意味を持つと思われる英語の選択には英々辞典が有効なのであるが、果たしてそこまでして調べた英語がほかの開発者にすぐ理解できる単語でない場合がある。
プログラムの変数などわかればいい。わかればいいというのは見たときにその変数の意味がわかればいいと言うだけでなく、変数を探すときにその変数名を想像できなければ使えない。
日本人なのだから変数名も日本語でいいのだが、プログラム環境の問題でMBCS(マルチバイトキャラクターセット=日本語などの多バイト文字)は使いたくない。そんなことで開発ツールのバグに引っかかりたくない。それでなくても、Delphi2006のエディターはバグってる![参考]
ということで、簡単な英語は英語で、英語にすると面倒なのはローマ字で!と言う折衷案的命名が多かったりするのである。
先日から各ブログにちゃんとコピーライトを入れたいと思っていた。
MoEのブログを書き出すときにコピーライトを挿入していたのだが、静的ページを使っていたためにトップページか、各話題のトップにしか表示されていない。
こんなんじゃだめだ。
くろねこのコピーライトを挿入するときの要望項目
静的ページは話題ごとに切り替えできてメンテナンスも簡単、テーマに依存しないのだが1つ1つの記事には表示できないので×
ブロックはメンテナンスが簡単だがそもそも話題ごとって切り替えが無理。
そこで検討したのがテーマには依存してしまうが、各テーマの記事の本文テンプレートを編集することによって、コピーライトを表示する。