スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

F#入門基本編落穂拾い その16 (Character)

.NETでは、2byteのUTF-16Characterを基本としています。
 
1byteで表すことのできるアルファベット系はBをつけることで、byte値を求めることができます。
 
> 'C'B;;
val it : byte = 67uy
 
> 'あ'B;;
  'ア'B;;
  ^^^^
 error FS1157: This is not a valid byte literal
 
charはforループ等でも使用できます。
 
> for ch in 'A' .. 'z' do
    printf "%c" ch
printfn "";;
 
ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz
 
> for ch in 'あ' .. 'ん' do
    printf "%c " ch
printfn "";;
 
あ ぃ い ぅ う ぇ え ぉ お か が き ぎ く ぐ け げ こ ご さ ざ し じ す ず せ ぜ そ ぞ た だ ち ぢ っ つ づ て で と ど な に ぬ ね の は ば ぱ ひ び ぴ ふ ぶ ぷ へ べ ぺ ほ ぼ ぽ ま み む め も ゃ や ゅ ゆ ょ よ ら り る れ ろ ゎ わ ゐ ゑ を ん 
 
> let t = ['a' .. 'd'];;
 
val t : char list = ['a'; 'b'; 'c'; 'd']
 
文字列をchar型の配列に変換して取り扱うのはよくある手法で次のようにします。
 
> let str = "abあい"
let chars = str.ToCharArray();;
 
val str : string = "abあい"
val chars : char [] = [|'a'; 'b'; 'あ'; 'い'|]
 
逆にchar[]から文字列を生成するにはnewを利用します。
 
> let str2 = new string(chars);;
 
val str2 : string = "abあい"
 
文字列のn番目のcharacterを求めるにはCharsメソッドを使います。
 
> str.Chars(2);;
val it : char = 'あ'
 
indexerでもアクセス可能です。
> str.[2];;
val it : char = 'あ'
 
最後にエスケープシーケンスについてふれておきます。
エスケープシーケンスは、改行やタブ、囲み文字等の特殊な文字を表現する場合に利用する記号を指します。
 

let singleQuote = '\''    //一重引用符
let doubleQuote = '\"'    //二重引用符
let backSlash = '\\'      //\自身
let newLine = '\n'        //改行
let horizontalTab = '\t'  //タブ
 
let chars = [| 'あ';singleQuote;'い';doubleQuote;'う';backSlash;'え';'お';'か';
                newLine;'き';horizontalTab;'く'|]
 
let str = new string(chars)
printf "%s" str
(実行例)
あ'い"う\えおか
き    く
スポンサーサイト

テーマ : プログラミング
ジャンル : コンピュータ

コメントの投稿

非公開コメント

プロフィール

T GYOUTEN

Author:T GYOUTEN
F#と英単語とフリーソフトと読書に興味があります。
ホームページでフリーソフトも公開しています。どぞ御贔屓に。

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
フリーエリア
フリーエリア
blogram投票ボタン
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。