2017-10-08 12 views
1

フィッシュシェルの部分文字列の有無をテストするにはどうすればよいですか?例えば、switch式の中で:あなたはそれは、その文字列でを終了した場合テストしたい場合はストリングにフィッシュシェルの別の文字列が含まれているかどうかをテストするにはどうすればよいですか?

set myvar "a long test string" 
switch $myvar 
case magical-operator-here "test string" 
    echo 'yep!' 
case '*' 
    echo 'nope!' 
end 

答えて

6

*が、そう

set myvar "a long test string" 
switch $myvar 
case "*test string" 
    echo 'yep!' 
case '*' 
    echo 'nope!' 
end 

ワイルドカード文字です。中央のどこかに表示されている場合は、末尾に別の*を追加してください。

また、2.3.0以降、matchサブコマンドを使用して魚にstringが組み込まれているため、string match -q -- "*test string" $myvarも使用できます。また、 "-r"オプション付きのpcre形式の正規表現もサポートしています。

+0

私はいつもあなたのStackOverflow答えは魚の殻に関連していただきありがとうございます。 – Chris

関連する問題