<!--
{
  "availability" : [
    "iOS: 2.0.0 -",
    "iPadOS: 2.0.0 -",
    "macCatalyst: 13.0.0 -",
    "macOS: 10.0.0 -",
    "tvOS: 9.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 2.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Foundation",
  "identifier" : "/documentation/Foundation/StringTransform",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "Foundation"
    ],
    "preciseIdentifier" : "c:@T@NSStringTransform"
  },
  "title" : "StringTransform"
}
-->

# StringTransform

Constants representing an ICU string transform.

```
struct StringTransform
```

## Discussion

These constants are used by the [`NSString`](/documentation/Foundation/NSString) method [`applyingTransform(_:reverse:)`](/documentation/Foundation/NSString/applyingTransform(_:reverse:)).

## Topics

### Transliteration

[`static let toLatin: StringTransform`](/documentation/Foundation/StringTransform/toLatin)

A constant containing the transliteration of a string from any script to Latin script.

[`static let latinToArabic: StringTransform`](/documentation/Foundation/StringTransform/latinToArabic)

A constant containing the transliteration of a string from Latin script to Arabic script.

[`static let latinToCyrillic: StringTransform`](/documentation/Foundation/StringTransform/latinToCyrillic)

A constant containing the transliteration of a string from Latin script to Cyrillic script.

[`static let latinToGreek: StringTransform`](/documentation/Foundation/StringTransform/latinToGreek)

A constant containing the transliteration of a string from Latin script to Greek script.

[`static let latinToHangul: StringTransform`](/documentation/Foundation/StringTransform/latinToHangul)

A constant containing the transliteration of a string from Latin script to Hangul script.

[`static let latinToHebrew: StringTransform`](/documentation/Foundation/StringTransform/latinToHebrew)

A constant containing the transliteration of a string from Latin script to Hebrew script.

[`static let latinToHiragana: StringTransform`](/documentation/Foundation/StringTransform/latinToHiragana)

A constant containing the transliteration of a string from Latin script to Hiragana script.

[`static let latinToKatakana: StringTransform`](/documentation/Foundation/StringTransform/latinToKatakana)

A constant containing the transliteration of a string from Latin script to Katakana script.

[`static let latinToThai: StringTransform`](/documentation/Foundation/StringTransform/latinToThai)

A constant containing the transliteration of a string from Latin script to Thai script.

[`static let hiraganaToKatakana: StringTransform`](/documentation/Foundation/StringTransform/hiraganaToKatakana)

A constant containing the transliteration of a string from Hiragana script to Katakana script.

[`static let mandarinToLatin: StringTransform`](/documentation/Foundation/StringTransform/mandarinToLatin)

A constant containing the transliteration of a string from Han script to Latin.

### Diacritic and Combining Mark Removal

[`static let stripDiacritics: StringTransform`](/documentation/Foundation/StringTransform/stripDiacritics)

A constant containing the transformation of a string by removing diacritics.

[`static let stripCombiningMarks: StringTransform`](/documentation/Foundation/StringTransform/stripCombiningMarks)

A constant containing the transformation of a string by removing combining marks.

### Halfwidth and Fullwidth Form Conversion

[`static let fullwidthToHalfwidth: StringTransform`](/documentation/Foundation/StringTransform/fullwidthToHalfwidth)

A constant containing the transformation of a string from full-width CJK characters to half-width forms.

### Character Representation

[`static let toUnicodeName: StringTransform`](/documentation/Foundation/StringTransform/toUnicodeName)

An identifier for a transform that converts characters to Unicode names.

[`static let toXMLHex: StringTransform`](/documentation/Foundation/StringTransform/toXMLHex)

A constant containing the transformation of a string from characters to XML hexadecimal escape codes.

### Initializers

[`init(String)`](/documentation/Foundation/StringTransform/init(_:))

[`init(rawValue: String)`](/documentation/Foundation/StringTransform/init(rawValue:))

## Relationships

### Conforms To

[`RawRepresentable`](/documentation/Swift/RawRepresentable)

[`Equatable`](/documentation/Swift/Equatable)

[`Sendable`](/documentation/Swift/Sendable)

[`Hashable`](/documentation/Swift/Hashable)

[`SendableMetatype`](/documentation/Swift/SendableMetatype)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)