below sample correct data
hello @[reda sel](native:reda) hello @[peter k](native:123456) i using regex
(\@\[.*?])(\(.*?:.*?\)) to data like
@[reda sel](native:reda) @[peter k](native:123456) the problem is, when input data this
hello @[reda sel] hello. @[peter k](native:123456) testing hello @[reda sel](native:reda) hello @[peter k](native:123456) the result is
@[reda sel] hello. @[peter k](native:123456) @[reda sel](native:reda) @[peter k](native:123456) i need capture data expression example above. if data repeated, result not overlapping that. , result this
@[peter k](native:123456) @[reda sel](native:reda) @[peter k](native:123456) edited if wanted replace data using result value
hello reda sel should use foreach , replace one, one, or there other regex options?
thank assistance.
the main problem initial .*?, use negated character classes here instead ...
(@\[[^]]*])(\([^:]*:[^)]*\))
Comments
Post a Comment