大家好我想读一个用双引号括起来的字符串,例如" cars" : 我正在使用此命令但无法读取它可能是我没有使用正确的格式来读取引号
$houseid = $json |Get-Content |Select-String -pattern ""houseid":"| measure | select -exp count
write-host "houseid = " $houseid
我正在从json文件中读取文件
答案 0 :(得分:2)
当包含引号时,用单引号包装模式。虽然没有必要,但您应该添加-SimpleMatch
以指定它是正常的字符串模式而不是正则表达式。
#Valid sample
'"houseid":myjsonvalue' | Select-String -Pattern '"houseid":' -SimpleMatch | measure | select -ExpandProperty count
1
#Invalid sample
'houseid:myjsonvalue' | Select-String -Pattern '"houseid":' -SimpleMatch | measure | select -ExpandProperty count
0