プログラマーなら一度は煩わされたことのある文字コードについてのスレ。
UTF-8、Shift_JIS、JIS、EUC、Unicode、UCS、サロゲートペア、コードポイント、文字コード判定、
合成文字、ソート、TRON、外字コード、その他について語り合いましょう。
各言語での文字列の扱いについての質問もOKです。
基本マッターリ、ささ、茶でもどうぞ。
■過去スレ
文字コード総合スレ part1 http://pc11.2ch.net/test/read.cgi/tech/1031028205/
文字コード総合スレ part2 http://pc11.2ch.net/test/read.cgi/tech/1143375639/
文字コード総合スレ part3 http://pc11.2ch.net/test/read.cgi/tech/1180250376/
文字コード総合スレ part4 http://pc11.2ch.net/test/read.cgi/tech/1228052369/
(スレ再利用)UnicodeとUTF-8の違いは? http://pc12.2ch.net/test/read.cgi/tech/1177930957/
(隔離スレ)UnicodeとUTF-8の違いは? その2 http://pc12.2ch.net/test/read.cgi/tech/1274937437/
文字コード総合スレ part5 http://pc12.2ch.net/test/read.cgi/tech/1236529563/
文字コード総合スレ part6 http://hibari.2ch.net/test/read.cgi/tech/1278923059/
文字コード総合スレ part7 http://toro.2ch.net/test/read.cgi/tech/1306595564/
文字コード総合スレ part8 http://peace.2ch.net/test/read.cgi/tech/1354248962/
文字コード総合スレ part9 http://peace.2ch.net/test/read.cgi/tech/1401301779/
文字コード総合スレ Part10 http://mevius.2ch.net/test/read.cgi/tech/1444822140/
文字コード総合スレ Part11 http://mevius.5ch.net/test/read.cgi/tech/1516629503/
探検
文字コード総合スレ Part12
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2018/12/17(月) 16:48:24.47ID:Pfqpaohb343デフォルトの名無しさん
2020/10/09(金) 09:29:33.69ID:81dxs4Bx ドキュメントを見ると結構マイナー(?)なエンコーディングもあるっぽいね。
ケータイ各社の絵文字入りSJISとかもあるんだ。
https://en.wikibooks.org/wiki/Ruby_Programming/Encoding
ケータイ各社の絵文字入りSJISとかもあるんだ。
https://en.wikibooks.org/wiki/Ruby_Programming/Encoding
344デフォルトの名無しさん
2020/10/09(金) 11:37:23.24ID:5kgt8bw0 >>342
Python は内部格納文字コードに unicode を固定で使用していて、unicode に変換できない文字は使えないし、
unicode に変換した場合に unify などで消える情報は保持できないけど、
ruby は特定の文字コードを仮定した内部コードを持たないため、programing や library の実装でどうにでもなる。
初心者には Python の実装がわかりやすいけど、文字コードそのものをいじりたいレベルになると嵌ることがある。
概要は ruby m17n とかで、検索してい関連しそうな記事を読んで見ると良いかと。
Python は内部格納文字コードに unicode を固定で使用していて、unicode に変換できない文字は使えないし、
unicode に変換した場合に unify などで消える情報は保持できないけど、
ruby は特定の文字コードを仮定した内部コードを持たないため、programing や library の実装でどうにでもなる。
初心者には Python の実装がわかりやすいけど、文字コードそのものをいじりたいレベルになると嵌ることがある。
概要は ruby m17n とかで、検索してい関連しそうな記事を読んで見ると良いかと。
345デフォルトの名無しさん
2020/10/09(金) 11:44:47.75ID:vl+UDRkB うそはいかんよ
python は binary も自由に扱える
python は binary も自由に扱える
346デフォルトの名無しさん
2020/10/09(金) 12:08:49.92ID:8qJEmYsV347デフォルトの名無しさん
2020/10/09(金) 12:37:20.08ID:vl+UDRkB ruby は文字じゃないものの文字列長をどうやって計算してるのですか?
348デフォルトの名無しさん
2020/10/09(金) 12:38:41.36ID:EjYkYVIx >>347
文字じゃないものの文字列長なんて計算できるわけ無いでしょ(笑)
だからいろんな文字コードを文字として認識できるようになってる
それに対しPythonはバイナリだから文字列の長さが計算できない(大爆笑)
文字じゃないものの文字列長なんて計算できるわけ無いでしょ(笑)
だからいろんな文字コードを文字として認識できるようになってる
それに対しPythonはバイナリだから文字列の長さが計算できない(大爆笑)
349デフォルトの名無しさん
2020/10/09(金) 12:44:19.84ID:vl+UDRkB うそはいかんよ
馬鹿丸出しだから煽りは止めた方が良い
馬鹿丸出しだから煽りは止めた方が良い
350342
2020/10/09(金) 12:45:15.41ID:hk0qQeVw351デフォルトの名無しさん
2020/10/09(金) 20:40:06.43ID:phj7/P3X 漢字のようで漢字でないUnicodeの「康熙部首」と「CJK部首補助」
https://techracho.bpsinc.jp/hachi8833/2020_10_07/95257
https://techracho.bpsinc.jp/hachi8833/2020_10_07/95257
352デフォルトの名無しさん
2020/10/10(土) 09:48:22.75ID:mP3lsNpF Unicode 3.0って1999年だろうに
353デフォルトの名無しさん
2020/10/10(土) 22:38:12.17ID:vUhDQSk6 nuby からの流れで... nkf って今でもメンテされてるようで。
ネットニュースから shar で入手したのはいつの日か。
ネットニュースから shar で入手したのはいつの日か。
354デフォルトの名無しさん
2020/10/10(土) 23:59:49.31ID:33g/v1Rs Unicodeの文字の情報を見たいと思ったら
どれを参照すればいいの?
どれを参照すればいいの?
355デフォルトの名無しさん
2020/10/11(日) 01:36:12.47ID:PkCT08SK 情報って?
356デフォルトの名無しさん
2020/10/11(日) 01:53:31.67ID:QQ2vPcGT Aという文字の小文字はaであるとか
357デフォルトの名無しさん
2020/10/11(日) 02:42:43.61ID:Y6xs0w7V358デフォルトの名無しさん
2020/10/11(日) 06:59:02.20ID:QQ2vPcGT >>357
それらの情報を全て文字ごとに知りたいんだよ
それらの情報を全て文字ごとに知りたいんだよ
359デフォルトの名無しさん
2020/10/11(日) 07:21:36.62ID:X3noy0YM >>358
"Find chart by hex code:" ってとこにコードポイントを入れてみようw
"Find chart by hex code:" ってとこにコードポイントを入れてみようw
360デフォルトの名無しさん
2020/10/11(日) 07:33:27.40ID:QQ2vPcGT >>359
情報が全く足りません
情報が全く足りません
361デフォルトの名無しさん
2020/10/11(日) 07:34:05.33ID:QQ2vPcGT Aは大文字であり、対応する小文字はaである
という情報はどこに書かれているのでしょうか?
という情報はどこに書かれているのでしょうか?
362デフォルトの名無しさん
2020/10/11(日) 08:36:01.64ID:9KwtZAoB https://unicode.org/charts/PDF/U0000.pdf
これの
LATIN CAPITAL LETTER A
LATIN SMALL LETTER A
区別じゃ足りないかい?
これの
LATIN CAPITAL LETTER A
LATIN SMALL LETTER A
区別じゃ足りないかい?
363デフォルトの名無しさん
2020/10/11(日) 08:49:30.81ID:biiSH/I3 > 0041 A LATIN CAPITAL LETTER A
少なくとも「Aは大文字」は明記されてるけど??
> 0061 a LATIN SMALL LETTER A
小文字aの定義の記述から対応する文字も分かると思うんだけど
それじゃわからないということであれば、
「大文字Aに対応する小文字はaである」みたいなことは
Unicodeの仕様書じゃなくて英語圏の小学生or幼稚園児向け教科書とかに書かれてるんじゃないかね
少なくとも「Aは大文字」は明記されてるけど??
> 0061 a LATIN SMALL LETTER A
小文字aの定義の記述から対応する文字も分かると思うんだけど
それじゃわからないということであれば、
「大文字Aに対応する小文字はaである」みたいなことは
Unicodeの仕様書じゃなくて英語圏の小学生or幼稚園児向け教科書とかに書かれてるんじゃないかね
364デフォルトの名無しさん
2020/10/11(日) 09:48:07.57ID:EIUTbwb3365デフォルトの名無しさん
2020/10/11(日) 10:11:43.02ID:X3noy0YM >>364
使えるかどうかは能力の問題ですよねw
使えるかどうかは能力の問題ですよねw
366デフォルトの名無しさん
2020/10/11(日) 10:24:25.43ID:ieSx8e01367デフォルトの名無しさん
2020/10/11(日) 12:14:43.64ID:kZXFoyze ほう
3041;HIRAGANA LETTER SMALL A;Lo;0;L;;;;;N;;;;;
3042;HIRAGANA LETTER A;Lo;0;L;;;;;N;;;;;
3041;HIRAGANA LETTER SMALL A;Lo;0;L;;;;;N;;;;;
3042;HIRAGANA LETTER A;Lo;0;L;;;;;N;;;;;
368デフォルトの名無しさん
2020/10/11(日) 12:26:01.00ID:j5pFI3Yh あ、あと文字の幅も知りたい
369デフォルトの名無しさん
2020/10/11(日) 12:27:09.66ID:j5pFI3Yh Aに対応する小文字がaなら
あに対応するカタカナはアという情報があっても
良いと思うのだがあるのか?
あに対応するカタカナはアという情報があっても
良いと思うのだがあるのか?
370デフォルトの名無しさん
2020/10/11(日) 12:33:22.48ID:kZXFoyze >>369
曾礼多
曾礼多
371デフォルトの名無しさん
2020/10/11(日) 12:36:42.03ID:j5pFI3Yh >>370
嫁無い
嫁無い
372デフォルトの名無しさん
2020/10/11(日) 13:23:05.62ID:a5ebPbEF 1,2,3
373デフォルトの名無しさん
2020/10/11(日) 13:26:32.41ID:a5ebPbEF 3042;HIRAGANA LETTER A;Lo;0;L;;;;;N;;;;;
30A2;KATAKANA LETTER A;Lo;0;L;;;;;N;;;;;
ないようだ
30A2;KATAKANA LETTER A;Lo;0;L;;;;;N;;;;;
ないようだ
374デフォルトの名無しさん
2020/10/11(日) 18:56:47.77ID:lNYgVXzm いい加減自分で調べられるだろ... 釣りか
Unicodeの他のデータとかUnicodeに関するAPIとかにある。
そうやって、全世界が「あーUnicodeでいいね」ってなるように
Unicodeの世界戦略は着々と進んでいるのであった。
Unicodeの他のデータとかUnicodeに関するAPIとかにある。
そうやって、全世界が「あーUnicodeでいいね」ってなるように
Unicodeの世界戦略は着々と進んでいるのであった。
375デフォルトの名無しさん
2020/10/11(日) 20:41:30.45ID:EIUTbwb3 日本語のマップくらいは自分で作ればいいんじゃね?
https://unicode.org/charts/PDF/U1B000.pdf
https://unicode.org/charts/PDF/U1B000.pdf
376デフォルトの名無しさん
2020/10/11(日) 21:37:26.96ID:wm510+AL 変体仮名も収録されてるんだな
377デフォルトの名無しさん
2020/10/13(火) 00:47:23.21ID:tEy/04zZ あをアに対応させるのはtransliterationのカテゴリーらしい、Unicode的には。
日本語だと翻字というのかー。
日本語だと翻字というのかー。
378デフォルトの名無しさん
2020/10/13(火) 06:17:14.44ID:RnL4UaYd 漢字の読み方(複数)もUnicodeで定義されるべきではないのかな?
379デフォルトの名無しさん
2020/10/13(火) 09:57:18.23ID:FpFGKRx+ 棚
380デフォルトの名無しさん
2020/10/13(火) 13:54:08.89ID:8ughZvwQ Unicode は文字コードであって漢和辞典ではないし、読みとか何の役にも建たないw
381デフォルトの名無しさん
2020/10/16(金) 00:51:17.29ID:zvezW4n7 >>361
大文字小文字を区別しない検索を行うためのデータという意味ならこれ
http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
ある文字が大文字または小文字に該当するかを知りたいなら>>364のデータの
3番目のフィールドを見る。Luなら大文字でLlなら小文字
大文字小文字を区別しない検索を行うためのデータという意味ならこれ
http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
ある文字が大文字または小文字に該当するかを知りたいなら>>364のデータの
3番目のフィールドを見る。Luなら大文字でLlなら小文字
382デフォルトの名無しさん
2020/10/20(火) 08:39:00.75ID:iDoXrFT4 rubyを勉強中の超初心者なのですが、時代遅れだ!みたいな記事をちらほら見かえます。
言語変えた方がいいのでしょうか…?
言語変えた方がいいのでしょうか…?
383デフォルトの名無しさん
2020/10/20(火) 10:25:40.98ID:xAfCoP/O なぜ、ここで、その質問を?
文字コード的には変えるほど意味はない気がする。(むしろ ruby が便利)
複数の言語が使えた方が便利なので、色々試すことはおすすめ。
文字コード的には変えるほど意味はない気がする。(むしろ ruby が便利)
複数の言語が使えた方が便利なので、色々試すことはおすすめ。
384デフォルトの名無しさん
2020/10/20(火) 10:30:11.60ID:pHiz9StD Yes, you can.
385デフォルトの名無しさん
2020/10/20(火) 16:20:38.97ID:Nlf6zVNG はい、あなたは管です。
386デフォルトの名無しさん
2020/10/24(土) 21:01:49.65ID:ehxRee/D いいえ、私は管(くだ)です
387デフォルトの名無しさん
2020/10/25(日) 01:00:40.73ID:+b3TKvfL いいえ、私は菅です。
388デフォルトの名無しさん
2020/12/07(月) 15:52:31.12ID:BlHR3DgB 櫻の絵文字🌸がPCやiPhoneだと花びら5枚なのに
Androidだと4枚ω
Androidだと4枚ω
389デフォルトの名無しさん
2020/12/07(月) 16:34:11.79ID:TmqbbT66 >>388
また友達に騙されちゃったんだね…
また友達に騙されちゃったんだね…
390デフォルトの名無しさん
2020/12/07(月) 21:30:49.12ID:8FTbf1dJ utf8でshiftjisで言う
iskanji()
iskanji2()
ishira()
iskata()
みたいなイディオム教えてください
iskanji()
iskanji2()
ishira()
iskata()
みたいなイディオム教えてください
391デフォルトの名無しさん
2020/12/08(火) 11:51:17.55ID:3Lge4PBr392デフォルトの名無しさん
2020/12/08(火) 12:25:05.31ID:no2frcgf >>391
shiftjisは扱わないのでutf8での方法を教えてください
shiftjisは扱わないのでutf8での方法を教えてください
393デフォルトの名無しさん
2020/12/08(火) 17:31:43.20ID:/pT3aml4394デフォルトの名無しさん
2020/12/08(火) 18:36:17.22ID:E4wQPgos 長音(ー)とかの扱いがめんどくさい
395デフォルトの名無しさん
2020/12/09(水) 06:33:19.08ID:Hs7wcc9u ちょっと疑問に思ったのだけど、
utf8 の iskanji を作るとしたら、繁体字とかも含めますか?
それとも今は JISx0213:2004(11233文字) だけ?
それともこれの次の標準化規格になるものってありましたっけ?
utf8 の iskanji を作るとしたら、繁体字とかも含めますか?
それとも今は JISx0213:2004(11233文字) だけ?
それともこれの次の標準化規格になるものってありましたっけ?
396デフォルトの名無しさん
2020/12/09(水) 06:43:54.04ID:Hs7wcc9u ishankana() みたいなもの、javascript 版
if( /^[アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヲンァィゥェォャュョッ、。ー「」゙゚・]/.test('ア') )
{
console.log( '半角カタカナです');
}
if( /^[アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヲンァィゥェォャュョッ、。ー「」゙゚・]/.test('ア') )
{
console.log( '半角カタカナです');
}
397デフォルトの名無しさん
2020/12/09(水) 07:34:03.35ID:qbXHpF4v そのiskanjiとやらであなたが何を判定したいか次第だと思うんだけど・・
サロゲートペアの漢字とかも気にしなきゃだめだろうねえ
サロゲートペアの漢字とかも気にしなきゃだめだろうねえ
398デフォルトの名無しさん
2020/12/09(水) 08:14:17.98ID:TKgHvdMy >>396
半角カナは後ろの方の文字コードでかたまってるから簡単じゃろ。
漢字とか結構カオスでテーブル作ったほうが良さそうだね。
必要文字コード列挙してバイナリサーチするアルゴリズムがええのかな?
厳格でなくていいなら半角カナみたいに文字コードテーブルみて
ざっくり判定でも割と行けるとは思うけど。
半角カナは後ろの方の文字コードでかたまってるから簡単じゃろ。
漢字とか結構カオスでテーブル作ったほうが良さそうだね。
必要文字コード列挙してバイナリサーチするアルゴリズムがええのかな?
厳格でなくていいなら半角カナみたいに文字コードテーブルみて
ざっくり判定でも割と行けるとは思うけど。
399デフォルトの名無しさん
2020/12/09(水) 09:06:33.04ID:Hs7wcc9u そういえば前に、amazon kindle端末用の電子書籍データ云々でここに書きこんだ記憶が、
と思い当って見直してみたら2か月前でした・・・、
私の方は KDP の仕様にあってるかどうかをチェックするのが目的だったのですが、
確かにカオスでしたね。ちなみに半角カナのコードを出しておいてあれなのですが、
JISx0213 規格的には半角カナは含まれてないっぽいです(x0208も同様です)。
チェック用のプログラムは結局普通の配列に規格の文字を全部入れておいて、
そこにあれば OK なければ NG という感じになりました。
サロゲートペアの扱いも面倒だったし。
あ、今気づいたけれど、JISx0213 的には全角英数記号ってもしかして NG なのでは?
いやでも wiki のページでは SJISコードは全角になってるし・・・、
と思い当って見直してみたら2か月前でした・・・、
私の方は KDP の仕様にあってるかどうかをチェックするのが目的だったのですが、
確かにカオスでしたね。ちなみに半角カナのコードを出しておいてあれなのですが、
JISx0213 規格的には半角カナは含まれてないっぽいです(x0208も同様です)。
チェック用のプログラムは結局普通の配列に規格の文字を全部入れておいて、
そこにあれば OK なければ NG という感じになりました。
サロゲートペアの扱いも面倒だったし。
あ、今気づいたけれど、JISx0213 的には全角英数記号ってもしかして NG なのでは?
いやでも wiki のページでは SJISコードは全角になってるし・・・、
400デフォルトの名無しさん
2020/12/09(水) 09:18:54.21ID:bCzZQrOf ライブラリ内ではユニコードスカラー値についてのみ取り扱うと良いと思います。
401デフォルトの名無しさん
2020/12/09(水) 13:23:38.64ID:y7KEYUhD Ruby の古いNKF を使うと、片仮名・平仮名の変換もできるけど、
片仮名・平仮名を判定するメソッドはない
たぶん、NKF の内部では、そういう関数があるのだろけど、公開されていないのかも
module NKF
https://docs.ruby-lang.org/ja/latest/class/NKF.html
require 'nkf'
p NKF.nkf( '-m0 -h3 -w', 'あイ' )
#=> "アい"
片仮名・平仮名を判定するメソッドはない
たぶん、NKF の内部では、そういう関数があるのだろけど、公開されていないのかも
module NKF
https://docs.ruby-lang.org/ja/latest/class/NKF.html
require 'nkf'
p NKF.nkf( '-m0 -h3 -w', 'あイ' )
#=> "アい"
402デフォルトの名無しさん
2020/12/09(水) 13:25:03.81ID:rIU0lDlE オプションそのまま文字列で渡すとか
ダッセェインターフェースだな
手抜きにも程がある
ダッセェインターフェースだな
手抜きにも程がある
403401
2020/12/09(水) 14:41:10.37ID:y7KEYUhD Ruby の正規表現・鬼雲で判別できた
re_hira = /\p{hiragana}{1}/ # 平仮名
re_kata = /\p{katakana}{1}/ # カタカナ
str = '愛あいカキうクx'
str.each_char do |ch|
ch.match( re_hira ){ |md| puts "平仮名 : #{ md[ 0 ] }" }
ch.match( re_kata ){ |md| puts "カタカナ : #{ md[ 0 ] }" }
end
出力
平仮名 : あ
平仮名 : い
カタカナ : カ
カタカナ : キ
平仮名 : う
カタカナ : ク
re_hira = /\p{hiragana}{1}/ # 平仮名
re_kata = /\p{katakana}{1}/ # カタカナ
str = '愛あいカキうクx'
str.each_char do |ch|
ch.match( re_hira ){ |md| puts "平仮名 : #{ md[ 0 ] }" }
ch.match( re_kata ){ |md| puts "カタカナ : #{ md[ 0 ] }" }
end
出力
平仮名 : あ
平仮名 : い
カタカナ : カ
カタカナ : キ
平仮名 : う
カタカナ : ク
404デフォルトの名無しさん
2020/12/09(水) 15:27:54.98ID:tBDPYy0r >>402
tcl/tk
tcl/tk
405デフォルトの名無しさん
2020/12/09(水) 16:19:55.89ID:H89RJ3R9 こゝろ
406401
2020/12/09(水) 17:51:11.38ID:y7KEYUhD >>403
を修正
Ruby の正規表現・鬼雲で、平仮名・カタカナ・漢字を判別した
re_hira = /\p{Hiragana}{1}/ # 平仮名
re_kata = /\p{Katakana}{1}/ # カタカナ
re_han = /\p{Han}{1}/ # 漢字
str = 'Aあい善悪カキ愛うクx'
p str.encoding #=> <Encoding:UTF-8>
str.each_char do |ch| # 1文字ずつ処理する
ch.match( re_hira ){ |md| puts "平仮名 : #{ md[ 0 ] }" }
ch.match( re_kata ){ |md| puts "カタカナ : #{ md[ 0 ] }" }
ch.match( re_han ){ |md| puts "漢字 : #{ md[ 0 ] }" }
end
出力
平仮名 : あ
平仮名 : い
漢字 : 善
漢字 : 悪
カタカナ : カ
カタカナ : キ
漢字 : 愛
平仮名 : う
カタカナ : ク
を修正
Ruby の正規表現・鬼雲で、平仮名・カタカナ・漢字を判別した
re_hira = /\p{Hiragana}{1}/ # 平仮名
re_kata = /\p{Katakana}{1}/ # カタカナ
re_han = /\p{Han}{1}/ # 漢字
str = 'Aあい善悪カキ愛うクx'
p str.encoding #=> <Encoding:UTF-8>
str.each_char do |ch| # 1文字ずつ処理する
ch.match( re_hira ){ |md| puts "平仮名 : #{ md[ 0 ] }" }
ch.match( re_kata ){ |md| puts "カタカナ : #{ md[ 0 ] }" }
ch.match( re_han ){ |md| puts "漢字 : #{ md[ 0 ] }" }
end
出力
平仮名 : あ
平仮名 : い
漢字 : 善
漢字 : 悪
カタカナ : カ
カタカナ : キ
漢字 : 愛
平仮名 : う
カタカナ : ク
407デフォルトの名無しさん
2020/12/09(水) 18:21:03.27ID:L/x3uoyo C++かC#でお願いします
408401
2020/12/09(水) 18:56:51.76ID:y7KEYUhD 鬼雲を、C++, C# など、他言語から使えないのか?
409デフォルトの名無しさん
2020/12/09(水) 19:27:16.18ID:jODQKuwy 高性能高速ライブラリがあるのに、
なぜわざわざ、
低性能低速言語Rubyの、
低性能低速libraryを使う必要が、
あるんだ?、
なぜわざわざ、
低性能低速言語Rubyの、
低性能低速libraryを使う必要が、
あるんだ?、
410デフォルトの名無しさん
2020/12/09(水) 19:45:05.56ID:ZEWfqGU4 C/C++は生産性が低いから
411401
2020/12/09(水) 19:59:27.39ID:y7KEYUhD412デフォルトの名無しさん
2020/12/10(木) 07:33:03.31ID:KWX3PjQ+ >>406
ruby を全然しらんのだが、 each_char ってのはどういう単位で文字を切り出してくるの?
上であったがサロゲートとか、絵文字とか、そのあたり特に。
Hanというプロパティは日本に限らず中国や韓国のも全部入り?
ruby を全然しらんのだが、 each_char ってのはどういう単位で文字を切り出してくるの?
上であったがサロゲートとか、絵文字とか、そのあたり特に。
Hanというプロパティは日本に限らず中国や韓国のも全部入り?
413デフォルトの名無しさん
2020/12/10(木) 08:02:18.65ID:oexX+ZIk >>407
グダグダいってるうちにスクラッチで車輪の再発明実装が終わる頃だな。
iskanjiはテーブル使うしかないかね?JISコードに変換して昔ながらの判定
するにもJISコード変換にテーブル
使うことになるだろうし。
どこかのページに色分けして中国専用の漢字の混ざり具合見せてたけどエグいねw
グダグダいってるうちにスクラッチで車輪の再発明実装が終わる頃だな。
iskanjiはテーブル使うしかないかね?JISコードに変換して昔ながらの判定
するにもJISコード変換にテーブル
使うことになるだろうし。
どこかのページに色分けして中国専用の漢字の混ざり具合見せてたけどエグいねw
414デフォルトの名無しさん
2020/12/10(木) 10:34:51.08ID:RjOF8qIo 謎のタイ語判定コード , Javascript 版
strThai = "\u0e01\u0e51\u0e3f ทำงาน";
re = strThai.match(/([\u0E00-\u0E7F])+/g);
console.log( re );
参考ページ等
http://www.asahi-net.or.jp/~ax2s-kmtn/ref/unicode/u0e00.html
https://0g0.org/category/0E00-0E7F/1/
サロゲートペアを考慮しなくて良い言語はこのパターンでオーケーかな?
strThai = "\u0e01\u0e51\u0e3f ทำงาน";
re = strThai.match(/([\u0E00-\u0E7F])+/g);
console.log( re );
参考ページ等
http://www.asahi-net.or.jp/~ax2s-kmtn/ref/unicode/u0e00.html
https://0g0.org/category/0E00-0E7F/1/
サロゲートペアを考慮しなくて良い言語はこのパターンでオーケーかな?
415401
2020/12/10(木) 12:43:53.30ID:HstTQkWC >>412
Ruby の1文字は、バイトサイズと異なる
str = "👪θ💀Ω🄫"
p str.encoding #=> <Encoding:UTF-8>
str.each_char do |ch| # 1文字ずつ処理する
puts "#{ ch } : #{ ch.size }, #{ ch.bytesize }"
end
出力
👪 : 1, 4
θ : 1, 2
💀 : 1, 4
Ω : 1, 2
🄫 : 1, 4
Ruby の1文字は、バイトサイズと異なる
str = "👪θ💀Ω🄫"
p str.encoding #=> <Encoding:UTF-8>
str.each_char do |ch| # 1文字ずつ処理する
puts "#{ ch } : #{ ch.size }, #{ ch.bytesize }"
end
出力
👪 : 1, 4
θ : 1, 2
💀 : 1, 4
Ω : 1, 2
🄫 : 1, 4
416401
2020/12/10(木) 12:51:25.91ID:HstTQkWC417デフォルトの名無しさん
2020/12/10(木) 20:31:09.89ID:CcbWokCZ >>415
おお、すごい!
早速ローカルで試してみた... スキントーンがいけてなかった。おしい。
str = "👨🏻🦲"
p str.encoding #=> <Encoding:UTF-8>
str.each_char do |ch| # 1文字ずつ処理する
puts "#{ ch } : #{ ch.size }, #{ ch.bytesize }"
end
出力
👨 : 1, 4
;🏻 : 1, 4
; : 1, 3
🦲 : 1, 4
ハゲが直った! みたいなw
おお、すごい!
早速ローカルで試してみた... スキントーンがいけてなかった。おしい。
str = "👨🏻🦲"
p str.encoding #=> <Encoding:UTF-8>
str.each_char do |ch| # 1文字ずつ処理する
puts "#{ ch } : #{ ch.size }, #{ ch.bytesize }"
end
出力
👨 : 1, 4
;🏻 : 1, 4
; : 1, 3
🦲 : 1, 4
ハゲが直った! みたいなw
418デフォルトの名無しさん
2020/12/10(木) 20:34:43.12ID:CcbWokCZ あ、出力が微妙に違うかも。5chブラウザにペーストしたせいかも。
あともしかしてスキントーンはあえて別キャラ扱いとか?
あともしかしてスキントーンはあえて別キャラ扱いとか?
419デフォルトの名無しさん
2020/12/10(木) 21:25:24.00ID:YXjbRyJb オレオレ用語UZEEE!!
420デフォルトの名無しさん
2020/12/11(金) 06:34:28.41ID:5L91jtkU ん、何か変なこと書いてある?
しかし書き込む瞬間、絵文字が5chブラウザでちゃんと表示できるかちょっと不安に
なったが、一応いけるみたいね。少なくともオレオレ環境では。
5ch側はSJIS+数値参照を流しているだけかもしれんが。
しかし書き込む瞬間、絵文字が5chブラウザでちゃんと表示できるかちょっと不安に
なったが、一応いけるみたいね。少なくともオレオレ環境では。
5ch側はSJIS+数値参照を流しているだけかもしれんが。
421デフォルトの名無しさん
2020/12/14(月) 05:58:38.59ID:uAdA9GXf 機械学習関係とかで使う奴です。
なんとなく出来たので晒しときますね。
// PHP(UTF-8) での全角カタカナチェック(JISx0213網羅版)
$sKana = ''
. "カ\xE3\x82\x99" // 304B+3099 カに濁点 (Mac,NFD)
. "カ\xE3\x82\x9A" // 304B+309A カに半濁点(JISのセット文字の半濁点 or Mac,NFD 半濁点)
. "゛" // 309B 濁点 (主にWin,半カナから変換される奴?)
. "゜" // 309C 半濁点 (主にWin,同上)
. "ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポ"
. "マミムメモャヤュユョヨラリルレヮワヲン"
. "ヴヵヶヰヱ・ーヽヾ"
. "\xE3\x82\xA0" // ダブルハイフン , 30A0
. "\xE3\x83\xB7" // ワに濁点
. "\xE3\x83\xB8" // ヰに濁点
. "\xE3\x83\xB9" // ヱに濁点
. "\xE3\x83\xBA" // ヲに濁点
;
if( 1 === preg_match("/^[\x{3099}-\x{309C}\x{30A0}-ヾ]+$/u",$sKana) )
{
echo "全てカナカナです。";
}
else
{
echo " NG";
}
なんとなく出来たので晒しときますね。
// PHP(UTF-8) での全角カタカナチェック(JISx0213網羅版)
$sKana = ''
. "カ\xE3\x82\x99" // 304B+3099 カに濁点 (Mac,NFD)
. "カ\xE3\x82\x9A" // 304B+309A カに半濁点(JISのセット文字の半濁点 or Mac,NFD 半濁点)
. "゛" // 309B 濁点 (主にWin,半カナから変換される奴?)
. "゜" // 309C 半濁点 (主にWin,同上)
. "ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポ"
. "マミムメモャヤュユョヨラリルレヮワヲン"
. "ヴヵヶヰヱ・ーヽヾ"
. "\xE3\x82\xA0" // ダブルハイフン , 30A0
. "\xE3\x83\xB7" // ワに濁点
. "\xE3\x83\xB8" // ヰに濁点
. "\xE3\x83\xB9" // ヱに濁点
. "\xE3\x83\xBA" // ヲに濁点
;
if( 1 === preg_match("/^[\x{3099}-\x{309C}\x{30A0}-ヾ]+$/u",$sKana) )
{
echo "全てカナカナです。";
}
else
{
echo " NG";
}
422デフォルトの名無しさん
2020/12/14(月) 09:18:41.31ID:dIR87NiF 0x31F0-F9のアイヌ語カナ拡張が抜けてるような
423デフォルトの名無しさん
2020/12/14(月) 12:36:10.35ID:uAdA9GXf >>422
どんな文字か全く見てませんけど、コードが分かれば並べていくだけですね。
アイヌ語カナ拡張版?差し替え用ってことで。
"/^[\x{3099}-\x{309C}\x{30A0}-ヾ\x{31F0}-\x{31F9}]+$/u"
どんな文字か全く見てませんけど、コードが分かれば並べていくだけですね。
アイヌ語カナ拡張版?差し替え用ってことで。
"/^[\x{3099}-\x{309C}\x{30A0}-ヾ\x{31F0}-\x{31F9}]+$/u"
424デフォルトの名無しさん
2020/12/15(火) 07:45:42.06ID:mpgmHFbH425デフォルトの名無しさん
2020/12/15(火) 12:56:15.02ID:vE8VpXlG 日本+都道府県番号?
426デフォルトの名無しさん
2020/12/15(火) 13:41:07.26ID:OZzZpMYk >>424
市役所とか行ったことないのか?
市役所とか行ったことないのか?
427デフォルトの名無しさん
2020/12/15(火) 17:27:11.75ID:+Yh7x7Wy ISO 3166-2:JP
428デフォルトの名無しさん
2020/12/15(火) 18:17:13.23ID:Y7kqruGs 問題は東京みたいに旗が2種類あるところ
東京は歴史ある*みたいなほうになるのか銀杏の葉っぱみたいなほうになるのか
東京は歴史ある*みたいなほうになるのか銀杏の葉っぱみたいなほうになるのか
429デフォルトの名無しさん
2020/12/22(火) 20:48:11.38ID:hjkCLTVe ISO - ISO/IEC 10646:2020 - Information technology — Universal coded character set (UCS)
https://www.iso.org/standard/76835.html
2020年の内に完成した模様
ABSTRACTのとこが何か文字化けしてるけど。
https://www.iso.org/standard/76835.html
2020年の内に完成した模様
ABSTRACTのとこが何か文字化けしてるけど。
430デフォルトの名無しさん
2020/12/23(水) 00:48:02.18ID:r3ldn4Uo 何に時間がかかるの
431デフォルトの名無しさん
2020/12/23(水) 14:15:22.80ID:dwGREUpD ここでも行けるかな? 𝐁𝐨𝐥𝐝 𝐼𝑡𝑎𝑖𝑐 𝒮𝒸𝓇𝒾𝓅𝓉 𝔻𝕠𝕦𝕓𝕝𝕖 𝖲𝖺𝗇𝗌𝖾𝗋𝗂𝖿 𝙼𝚘𝚗𝚘𝚂𝚙𝚊𝚜𝚞
432デフォルトの名無しさん
2020/12/23(水) 16:04:04.77ID:Yot4/iGO433デフォルトの名無しさん
2020/12/23(水) 18:21:51.29ID:dwGREUpD コード表一列読み間違えて16ズレた。
何かローマ字みたいになってるけど偶然。
何かローマ字みたいになってるけど偶然。
434デフォルトの名無しさん
2020/12/23(水) 20:48:10.24ID:nit2qqbj SNSのアカウント名でこういう文字使ってる人いるよねえ
特に詳しそうには見えない人が多いが簡単入力できるツールかサイトがあるんだろうかね
特に詳しそうには見えない人が多いが簡単入力できるツールかサイトがあるんだろうかね
435デフォルトの名無しさん
2020/12/24(木) 08:15:43.26ID:EahE3vDH テスト
🅿🅴🅽 🅿🅸🅽🅴🅰🅿🅿🅻🅴 🅰🅿🅿🅻🅴 🅿🅴🅽
🅿🅴🅽 🅿🅸🅽🅴🅰🅿🅿🅻🅴 🅰🅿🅿🅻🅴 🅿🅴🅽
436デフォルトの名無しさん
2020/12/24(木) 13:14:04.00ID:Tf2UBq9W ℤ
437デフォルトの名無しさん
2020/12/24(木) 14:37:35.38ID:LJDzLTFM 何だろう? 専ブラだと全部読めるけど Firefox だと読めたり読めなかったりする。
431 と 435 は Firefox でも読める。432は読めない。436 は Z だけ読める。
🄟⒜⒭⒠⒩⒯⒣⒠⒮⒤⒵⒠⒟
Ⓒⓘⓡⓒⓛⓔⓓ
🅂🅀🅄🄰🅁🄴🄳
🅝🅔🅖🅐🅣🅘🅥🅔 🅒🅘🅡🅒🅛🅔🅓
🅽🅴🆃🅰🅶🅸🆅🅴 🆂🆀🆄🅰🆁🅴🅳
431 と 435 は Firefox でも読める。432は読めない。436 は Z だけ読める。
🄟⒜⒭⒠⒩⒯⒣⒠⒮⒤⒵⒠⒟
Ⓒⓘⓡⓒⓛⓔⓓ
🅂🅀🅄🄰🅁🄴🄳
🅝🅔🅖🅐🅣🅘🅥🅔 🅒🅘🅡🅒🅛🅔🅓
🅽🅴🆃🅰🅶🅸🆅🅴 🆂🆀🆄🅰🆁🅴🅳
438デフォルトの名無しさん
2020/12/24(木) 14:50:54.98ID:LJDzLTFM わかったサロゲートが原因だな。
BMP 以外の文字を &#XXXXX; 形式で投げる時に、なぜかサロゲート分解して2文字にして投げてるクライアントがいるな。
内部でいったん UTF-16 に変換すれば復元できるけど、内部がUTF32やUTF8だと未定文字になる。
BMP 以外の文字を &#XXXXX; 形式で投げる時に、なぜかサロゲート分解して2文字にして投げてるクライアントがいるな。
内部でいったん UTF-16 に変換すれば復元できるけど、内部がUTF32やUTF8だと未定文字になる。
439デフォルトの名無しさん
2020/12/25(金) 12:51:47.65ID:qJluI3Ne 同じ専ブラでも端末が変わると読めなくなるみたいだけど
440デフォルトの名無しさん
2020/12/25(金) 14:23:41.08ID:wLkIv5a0 そりゃフォントが違うから
441デフォルトの名無しさん
2020/12/25(金) 21:14:44.85ID:xu2VH6Eq フォントに?
442デフォルトの名無しさん
2020/12/31(木) 06:07:50.70ID:YZyBnRB+ → → → ~ のパターンでさりげなく令和が増えていて驚いた。
㋿ U+32ff
㋿ U+32ff
443デフォルトの名無しさん
2020/12/31(木) 06:20:27.61ID:rUTWKsHs あれほど騒ぎになったのに今更かよw
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 [ぐれ★]
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… ★3 [BFU★]
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… ★2 [BFU★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★2 [BFU★]
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 [Hitzeschleier★]
- 政府、株式の配当など金融所得を高齢者の医療保険料や窓口負担に反映する方針を固めた [バイト歴50年★]
- 外務省局長、よくわからないまま帰国へ [834922174]
- 中国高官と話す外務省局長の表情、やばい ★2 [175344491]
- 【高市速報】日本人の3割「中国への武力行使に踏み切る必要がある」ANN世論調査 [931948549]
- 高市早苗政権「経済的威圧をしてくる国はリスク」 トランプぴょんぴょん政権さん…… [175344491]
- 中国外務省「日中関係の悪化は高市早苗首相が原因」と名指しで強く非難。キタ━(゚∀゚)━! [153490809]
- 偏差値35大臣「すぐに経済的威圧するところへの依存はリスク」 [834922174]
