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
You can use a negative lookahead to avoid matching another -d/-n
in the match:
-[dn] (?!.*?-[dn]).*$
Could throw a greedy .*
before to eat up:
^.*(-[dn] .*)$
And grab matches of the first capture group . See test at regex101
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.