-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Comments
Conversation
- is a special character in regex when you use inside character class [], it stands for range when it appears anywhere else except As the first character in class or after [^] At the end of character class so your regex should be -- 'JIRA-[0-9]+'
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@sandeeprayala: as you noticed, minus is a special character, so we escaped it to match it as a literal. Your suggested change is to remove that escaping. Have you tested your change? Are you saying that the script did not work for you before?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, I have tested and it worked for me, my suggestion is to remove the " [ ] "'.
once you remove the square brackets the regex would be as below.
msg_regex= 'JIRA-[0-9]+'
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree; this regex is a mess. The first [ is unescaped, which makes the rest act as a set that goes up to the closing ] after the 9.
I set up an example here with a full explanation - https://regex101.com/r/R6kCL6/1
This broken regex will incorrectly match:
JIRA-99]0]-]
The outer brackets should be escaped or totally removed depending on the author's intent.
@Jmangle93
Jmangle93
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a good way to fix this regex
Uh oh!
There was an error while loading. Please reload this page.
'-' is a special character in regex when you use inside character class [], it stands for range when it appears anywhere else except
As the first character in class or after [^]
At the end of character class
so your regex should be -- 'JIRA-[0-9]+'