質問編集履歴
1
作成途中で送信したため訂正
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
PowerShell:Import-Csvの返却値から空白文字(半角スペース)
|
1
|
+
PowerShell:Import-Csvの返却値から空白文字(半角スペース)と空文字を切り分けて判定したい
|
body
CHANGED
@@ -1,19 +1,19 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
2
|
|
3
3
|
powershellを独学で勉強中です。
|
4
|
-
Import-Csvの返却値から空白文字(半角スペース)
|
4
|
+
Import-Csvの返却値から空白文字(半角スペース)と空文字を切り分けて判定したいです。
|
5
5
|
|
6
6
|
|
7
7
|
### 発生している問題・エラーメッセージ
|
8
8
|
|
9
|
-
以下のTSVファイル
|
9
|
+
以下のTSVファイルをImpot-Csvで読み込むと1行目と2行目の1列目は空文字(文字長0)が返却されます。1行目は半角スペース3桁を設定しているのですがImport-Csvで空文字が返却されるのはImport-Csvの仕様なのでしょうか。試しに3行目で半角スペース3桁を""で囲んだところ半角スペース3桁が返却されます。ただ、可能であればTSVファイルを書き換えることなく、Import-Csvの返却から空白文字(半角スペース)と空文字を切り分けて判定したいのですが、何か方法はありますでしょうか。
|
10
10
|
|
11
11
|
```
|
12
|
-
1 aaa bbb ccc
|
13
|
-
2 ddd eee #1列目は半角スペース3桁
|
14
|
-
3 " " fff ggg
|
15
|
-
4 hhh iii #1列目は空文字
|
16
12
|
|
13
|
+
|
14
|
+
1 aaa bbb #1列目は半角スペース3桁
|
15
|
+
2 ccc ddd #1列目は空文字
|
16
|
+
3 " " eee fff
|
17
17
|
```
|
18
18
|
|
19
19
|
|
@@ -25,16 +25,43 @@
|
|
25
25
|
Import-Csv $1 -Delimiter "`t" -Header "AAA","BBB","CCC" -Encoding UTF8
|
26
26
|
}
|
27
27
|
|
28
|
+
|
28
29
|
$tsvfile = GetTsvfile
|
29
30
|
|
30
|
-
$
|
31
|
+
$TSVDATA = $tsvfile | ? {[String]::IsNullOrWhiteSpace($_.AAA)}
|
32
|
+
$TSVDATA
|
31
33
|
|
34
|
+
Write-Output "---文字長---"
|
35
|
+
$TSVDATA[0].AAA.Length
|
36
|
+
$TSVDATA[1].AAA.Length
|
37
|
+
$TSVDATA[2].AAA.Length
|
38
|
+
|
32
39
|
```
|
33
40
|
|
41
|
+
<結果>
|
34
|
-
|
42
|
+
AAA BBB CCC
|
43
|
+
--- --- ---
|
44
|
+
aaa bbb
|
45
|
+
ccc ddd
|
46
|
+
eee fff
|
47
|
+
---文字長---
|
48
|
+
0
|
49
|
+
0
|
50
|
+
3
|
35
51
|
|
36
|
-
ここに問題に対して試したことを記載してください。
|
37
52
|
|
38
53
|
### 補足情報(FW/ツールのバージョンなど)
|
39
54
|
|
40
|
-
|
55
|
+
PS > $PSVersionTable
|
56
|
+
|
57
|
+
Name Value
|
58
|
+
---- -----
|
59
|
+
PSVersion 7.0.3
|
60
|
+
PSEdition Core
|
61
|
+
GitCommitId 7.0.3
|
62
|
+
OS Darwin 19.6.0 Darwin Kernel Version 19.6.0: Mon Aug 31 22:12:52 PDT 2020; root:…
|
63
|
+
Platform Unix
|
64
|
+
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0…}
|
65
|
+
PSRemotingProtocolVersion 2.3
|
66
|
+
SerializationVersion 1.1.0.1
|
67
|
+
WSManStackVersion 3.0
|