Reputation: 298
how can i extract bold range string in below
string :
- hello world blah -d blah vlaah -n blah vlahh
- hello world blah -n blah vlahh -d blah vlaah
- hello world blah -d blaaah
I tried. -[dn] .*$
but it found longest match string like below
- hello world blah -d blah vlaah -n blah vlahh
I want to extract shortest match string . thanks in advance
Upvotes: 3
Views: 103
Reputation: 12389
Could throw a greedy .*
before to eat up:
^.*(-[dn] .*)$
And grab matches of the first capture group. See test at regex101
Upvotes: 2
Reputation: 785196
You can use a negative lookahead to avoid matching another -d/-n
in the match:
-[dn] (?!.*?-[dn]).*$
Upvotes: 5