康煕部首、CJK部首補助、サロゲートペアの検出ブックマークレット
ウェブページに康煕部首、CJK部首補助、サロゲートペアが含まれているか確認するためのブックマークレットをGeminiに作ってもらった。サロゲートペアは「CJK統合漢字拡張B以降」と表現している。
javascript:(function() {
const patterns = {
"康煕部首": /[\u2F00-\u2FDF]/g,
"CJK部首補助": /[\u2E80-\u2EFF]/g,
"CJK統合漢字拡張B以降": /[\u{20000}-\u{2FFFF}]/ug,
"絵文字": /[\u{1F000}-\u{1FFFF}\u{1F300}-\u{1F64F}\u{1F680}-\u{1F6FF}\u{1F700}-\u{1F77F}\u{1F780}-\u{1F7FF}\u{1F800}-\u{1F8FF}\u{1F900}-\u{1F9FF}\u{1FA00}-\u{1FAFF}\u{2600}-\u{26FF}\u{2700}-\u{27BF}\u{1F1E6}-\u{1F1FF}\u{1F191}-\u{1F251}\u{1F004}\u{1F0CF}\u{1F170}-\u{1F171}\u{1F17E}-\u{1F17F}\u{1F18E}\u{3030}\u{3297}\u{3299}\u{FE00}-\u{FE0F}\u{1F018}-\u{1F02F}]/ug
};
const bodyText = document.body.innerText;
const foundChars = [];
for (const [name, pattern] of Object.entries(patterns)) {
const matches = bodyText.match(pattern);
if (matches && matches.length > 0) {
foundChars.push(`${name}: ${matches.join('')}`);
}
}
let message = "";
if (foundChars.length > 0) {
message = foundChars.join('\n');
} else {
message = "このページには康煕部首、CJK部首補助、CJK統合漢字拡張B以降の文字、絵文字は含まれていません。";
}
alert(message);
})();
コメント
コメントを投稿