---
title: "init(newRegularExpressionFromPattern:flags:in:)"
framework: javascriptcore
role: symbol
role_heading: Initializer
path: "javascriptcore/jsvalue/init(newregularexpressionfrompattern:flags:in:)"
---

# init(newRegularExpressionFromPattern:flags:in:)

Creates a JavaScript regular expression value from the specified pattern.

## Declaration

```swift
init!(newRegularExpressionFromPattern pattern: String!, flags: String!, in context: JSContext!)
```

## Parameters

- `pattern`: A string to be interpreted as a regular expression pattern.
- `flags`: A combination of zero or more single-letter flags specifying search options.
- `context`: The JavaScript context in which to create the value.

## Return Value

Return Value A new JavaScript regular expression object.

## Discussion

Discussion Calling this method creates a JavaScript RegExp object, and is equivalent to declaring a regular expression literal (such as /ab+c/i) or calling the RegExp constructor (for example, new RegExp("ab+c", "i")) in JavaScript. The flags parameter can include any of the following options: g (global match): match all occurrences of the pattern in a string, not just the first. i (ignore case): perform case-insensitive search. m (multiline): treat the ^ and $ regular expression tokens as matching the start or end of any line in a string (as delimited by newline or return characters), not just the start or end of the entire string.

## See Also

### Creating JavaScript Values

- [init(object:in:)](javascriptcore/jsvalue/init(object:in:).md)
- [init(bool:in:)](javascriptcore/jsvalue/init(bool:in:).md)
- [init(double:in:)](javascriptcore/jsvalue/init(double:in:).md)
- [init(int32:in:)](javascriptcore/jsvalue/init(int32:in:).md)
- [init(uInt32:in:)](javascriptcore/jsvalue/init(uint32:in:).md)
- [init(newObjectIn:)](javascriptcore/jsvalue/init(newobjectin:).md)
- [init(newArrayIn:)](javascriptcore/jsvalue/init(newarrayin:).md)
- [init(newErrorFromMessage:in:)](javascriptcore/jsvalue/init(newerrorfrommessage:in:).md)
- [init(undefinedIn:)](javascriptcore/jsvalue/init(undefinedin:).md)
- [init(nullIn:)](javascriptcore/jsvalue/init(nullin:).md)
- [init(point:inContext:)](javascriptcore/jsvalue/init(point:incontext:).md)
- [init(range:inContext:)](javascriptcore/jsvalue/init(range:incontext:).md)
- [init(rect:inContext:)](javascriptcore/jsvalue/init(rect:incontext:).md)
- [init(size:inContext:)](javascriptcore/jsvalue/init(size:incontext:).md)
- [init(newSymbolFromDescription:in:)](javascriptcore/jsvalue/init(newsymbolfromdescription:in:).md)
