2016-09-15 4 views
-1

私はちょっとぼんやりとしたインデントについて少し混乱しています。 "foo bar"という文字列があり、 "foo"だけを例として印刷したいと思っています。インデントを使用する - どのように私はこれを達成するだろうか?F#印刷用のインデント構文

私は両方の単語を印刷したいのですか?

私はこのような何か試してみました:

let f = 
    "foo bar"  

をそして、ここで私は多分これが動作するべきであると考えていました:?

printfn "foo bar" //prints whole "foo bar" 
printfn "foo 
world" 

ありがとうございます。

+1

インデントが何のためにあるのかないのです。空白の前に文字列の一部だけを取得したい場合は、[その '.Split()'メソッド](https://msdn.microsoft.com/en-us/library/system.string.split(v) = vs.110).aspx)。これで配列が得られ、配列の最初の要素を印刷することができます。 – rmunn

+1

私はこの質問に完全に困惑しています。地球上で何があなたの印象を与えたのですか? – TheInnerLight

+0

F#の字下げは、PythonのようなF#言語の構造と構文に関連しています。https://fsharpforfunandprofit.com/posts/fsharp-syntax/ –

答えて

2

最初の単語("foo")だけを印刷するには、文字列を「分割」して最初の部分を印刷する必要があります。

あなたはString.Split経由でこれを行うことができます:

let f = "foo bar" 
let split = f.Split([| ' ' |]) // Split by spaces 
let foo = split.[0] // First element in array is "foo" 
printfn foo 
+0

'f。[0]'は文字列 " foo bar "、私はあなたが' split。[0] 'を意味すると信じています。 –

+0

@zaid thanks ..直接入力するときに起こります。一定 –