i try to add before every word that do not have a starting [string]:
to have Line:
at its start so i did this regex ^(?![^:]+:)
https://regex101.com/r/oMF8ks/1
and if i write
1
2
3
it returns what i want expected
Line:1
Line:2
Line:3
and for
Line:1
Line:2
Line:3
it returns same as wanted
but my problem when i try to apply it on https://regex101.com/r/K0z3bc/1
1 : A
2 : B
3 : C
i expected
Line:1 : A
Line:2 : B
Line:3 : C
but i only got
1 : A
2 : B
3 : C
but when i change the regex to ^(?!Line:)
https://regex101.com/r/49i9tQ/1 then it works but i want it to work for all words and not just Line
You can use
^([^:\s]++)(?!:)
and replace with Line:$1
.
See the regex demo. Details:
^
- start of string([^:\s]++)
- Group 1: one or more chars other than :
and whitespace (possessive quantifier prevents backtracking into the [^:\s]
pattern and thus prevents partial matching if a colon is present further in the string)(?!:)
- not immediately followed with a colon.You may also omit the group and then use ^[^:\s]++(?!:)
and replace with Line:$0
. See this regex demo.