法令データ年号変換
by
taizooo
2014-06-19 [2014/06/19 17:25:21]
全角年号→半角英数年号
@@ -5,7 +5,7 @@
*/
var a=$X('//div[contains(text(),"最終改正:")]')[0];
-var b=$X('translate(./text(),"〇一二三四五六七八九","0123456789")', a).replace('平成','H').replace('昭和','S').replace('日','日 ').replace('令','');
+var b=$X('translate(./text(),"〇一二三四五六七八九","0123456789")', a).replace('平成','H').replace('昭和','S').replace('年','.').replace('月','.').replace('日',' ').replace('令','');
a.innerHTML=b;
// cho45 / dollarX.js https://gist.github.com/cho45/3238
/*
* @title 法令データ年号変換
* @description 全角年号→半角英数年号
* @include http://law.e-gov.go.jp/*
*/
var a=$X('//div[contains(text(),"最終改正:")]')[0];
var b=$X('translate(./text(),"〇一二三四五六七八九","0123456789")', a).replace('平成','H').replace('昭和','S').replace('年','.').replace('月','.').replace('日',' ').replace('令','');
a.innerHTML=b;
// cho45 / dollarX.js https://gist.github.com/cho45/3238
// extend version of $X
// $X(exp);
// $X(exp, context);
// $X(exp, type);
// $X(exp, context, type);
function $X (exp, context, type /* want type */) {
if (typeof context == "function") {
type = context;
context = null;
}
if (!context) context = document;
exp = (context.ownerDocument || context).createExpression(exp, function (prefix) {
var o = document.createNSResolver(context)(prefix);
if (o) return o;
return (document.contentType == "application/xhtml+xml") ? "http://www.w3.org/1999/xhtml" : "";
});
switch (type) {
case String: return exp.evaluate(context, XPathResult.STRING_TYPE, null).stringValue;
case Number: return exp.evaluate(context, XPathResult.NUMBER_TYPE, null).numberValue;
case Boolean: return exp.evaluate(context, XPathResult.BOOLEAN_TYPE, null).booleanValue;
case Array:
var result = exp.evaluate(context, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
for (var ret = [], i = 0, len = result.snapshotLength; i < len; i++) {
ret.push(result.snapshotItem(i));
}
return ret;
case undefined:
var result = exp.evaluate(context, XPathResult.ANY_TYPE, null);
switch (result.resultType) {
case XPathResult.STRING_TYPE : return result.stringValue;
case XPathResult.NUMBER_TYPE : return result.numberValue;
case XPathResult.BOOLEAN_TYPE: return result.booleanValue;
case XPathResult.UNORDERED_NODE_ITERATOR_TYPE:
// not ensure the order.
var ret = [], i = null;
while ((i = result.iterateNext())) ret.push(i);
return ret;
}
return null;
default: throw(TypeError("$X: specified type is not valid type."));
}
}
- Permalink
- このページへの個別リンクです。
- RAW
- 書かれたコードへの直接のリンクです。
- Packed
- 文字列が圧縮された書かれたコードへのリンクです。
- Userscript
- Greasemonkey 等で利用する場合の .user.js へのリンクです。
- Loader
- @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
- Metadata
- コード中にコメントで @xxx と書かれたメタデータの JSON です。