---
title: "init(_:as:)"
framework: swift
role: symbol
role_heading: Initializer
path: "swift/regex/init(_:as:)-2ucu7"
---

# init(_:as:)

Creates a regular expression with a strongly-typed capture list from the given regular expression.

## Declaration

```swift
init?(_ regex: Regex<AnyRegexOutput>, as outputType: Output.Type = Output.self)
```

## Parameters

- `regex`: A regular expression to convert to use a strongly-typed capture list.
- `outputType`: The capture structure to use.

## Discussion

Discussion You can use this initializer to convert a regular expression with a dynamic capture list to one with a strongly-typed capture list. If the type you provide as outputType doesn’t match the capture structure of regex, the initializer returns nil. let dynamicRegex = try Regex("(.+?): (.+)") if let stronglyTypedRegex = Regex(dynamicRegex, as: (Substring, Substring, Substring).self) {     print("Converted properly") } // Prints "Converted properly"
