スポンサーサイト

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

F#入門基本編落穂拾い その17 (string)

まずは文字の連結から。
 
> "ab"+"cd";;
val it : string = "abcd"
 
ただ余り効率が良くないので、頻繁に文字列を連結したりする場合はStringBuilderクラスを使用する場合もあります。
 
> open System.Text;;//StringBuilderクラスを使うため
 
> let sb0 = new StringBuilder("ab")
let sb1 = sb0.Append("cd")

let res = sb1.ToString();;
 
val sb0 : StringBuilder = abcd 
val sb1 : StringBuilder = abcd
val res : string = "abcd" //sb0の値に注意
 
次は文字列中に"や\などのエスケープシークエンス文字を含む場合の処理ですが、文字列の最初に@を付けることによって、その文字自体として取り扱うことができます。
 
> let t = @"s:\text.dat";;
val t : string = "s:\text.dat"
 
> t.IndexOf('\\');;
val it : int = 2
 
 
次に長い文字列を複数行に分けて書く場合ですが、これは最後に\を利用します、よって、2行目以降の各行の先頭のホワイトスペースを除いた形の文字列が定義できます。
 
> let t = "abc\
           cde  \
            geh";;
 
val t : string = "abccde  geh"
 
 
一般にstringを取り扱う方法は
 
(1).NETのライブラリをラップした、F#のライブラリを用いる。
(2)char[]に変換し自前の関数で処理する。
(3)正規表現を利用する
 
というのが基本ではないかと思います。

スポンサーサイト

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

コメントの投稿

非公開コメント

プロフィール

T GYOUTEN

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

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

この人とブロともになる

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