Keith M
Keith M

Reputation: 1249

Regex get last 2 characters pipe not working

I'm creating a regex expression to get the variables passed to a JavaScript constructor.

The input is always going to follow along these lines:

app.use(express.static('public'));

And the regex I plan to use to strip out the unnecessary parts is:

(^app.use\()|(..$)

The first part of the regex gets everything up to the first parenthesis, and the it's supposed to pipe it to another expression which gets the last 2 characters of the string.

My issue is that it seems to be ignoring the second regex. I tried a few other expressions in the second part and they worked, but this one isn't.

What am I doing wrong?

Regex example on Regex101: https://regex101.com/r/jV9eH6/3

UPDATE:

This is not a duplicate of How to replace all occurrences of a string in JavaScript?

My question is about a specific issue with a regex, not about replacing one string with another in JavaScript.

Upvotes: 1

Views: 332

Answers (1)

Avinash Raj
Avinash Raj

Reputation: 174844

You need to use multiline modifier. Whenever anchors ^, $ are used in your regex then feel free to add multi-line modifier m.

/(^app.use\()|(..$)/gm

DEMO

Upvotes: 1

Related Questions