---
title: "init(_:strategy:)"
framework: foundation
role: symbol
role_heading: Initializer
path: "foundation/personnamecomponents/init(_:strategy:)"
---

# init(_:strategy:)

Creates a person name components object from a given string by applying the provided parsing strategy.

## Declaration

```swift
init<S>(_ value: S.ParseInput, strategy: S) throws where S : ParseStrategy, S.ParseOutput == PersonNameComponents
```

## Parameters

- `value`: A string to parse into person name components.
- `strategy`: The strategy used to parse a string into person name components.

## Discussion

Discussion This method uses a combination of locale rules and the provided parse strategy object to determine the most likely name components for a particular string representation. Parsing name components from a representation created for an existing name components object may not produce equivalent results. important: The format style only parses names using Latin or CJK scripts.

## See Also

### Parsing Person Name Components

- [init(_:)](foundation/personnamecomponents/init(_:).md)
- [parseStrategy](foundation/personnamecomponents/formatstyle/parsestrategy.md)
