---
title: "withSubstitutionVariables(_:)"
framework: foundation
role: symbol
role_heading: Instance Method
path: "foundation/nspredicate/withsubstitutionvariables(_:)"
---

# withSubstitutionVariables(_:)

Returns a copy of the predicate and substitutes the predicates variables with specified values from a specified substitution variables dictionary.

## Declaration

```swift
func withSubstitutionVariables(_ variables: [String : Any]) -> Self
```

## Parameters

- `variables`: The substitution variables dictionary. The dictionary must contain key-value pairs for all variables in the receiver.

## Return Value

Return Value A copy of the receiver with the predicate’s variables substituted by values specified in variables.

## Discussion

Discussion The predicate itself is not modified by this method, so you can reuse it for any number of substitutions.

## See Also

### Creating a Predicate

- [init(format:argumentArray:)](foundation/nspredicate/init(format:argumentarray:).md)
- [init(format:arguments:)](foundation/nspredicate/init(format:arguments:).md)
- [init(format:_:)](foundation/nspredicate/init(format:_:).md)
- [init(_:)](foundation/nspredicate/init(_:).md)
- [init(value:)](foundation/nspredicate/init(value:).md)
- [init(block:)](foundation/nspredicate/init(block:).md)
- [init(fromMetadataQueryString:)](foundation/nspredicate/init(frommetadataquerystring:).md)
