Sample code for 30+ languages & platforms
PowerShell

JSON Escape and Unescape a String

Demonstrates how to JSON escape or unescape a string.

Chilkat PowerShell Downloads

PowerShell
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"

$sb = New-Object Chilkat.StringBuilder

$sb.Append("backslash: \\\\, A: \\u0041")
$($sb.GetAsString())

# The output is:
#    backslash: \\, A: \u0041

# The keyword "json" can be used
# to escape and unescape.  To escape is to encode.  To unescape is to decode.

# Unescape (decode) the string in sb.
$sb.Decode("json","utf-8")
$($sb.GetAsString())

# After JSON unescaping:
#    backslash: \, A: A

# Now JSON escape the string.
$sb.Encode("json","utf-8")
$($sb.GetAsString())

# After JSON escaping:
#    backslash: \\, A: A

# Note: The "A" is not escaped to "\u0041" because there is no need.
# The "\uXXXX" format would be produced for non-printable control chars.