Need help for regular expression - find, insert and delete
-
Perhaps this is a correct clarification:
-
If a
|
character is not found after the leading digits on a line, insert it with a space before it and a space after it -
If a
|
character is found anywhere else in a line, remove it and anything that follows it (and any space before it)
-
-
Thanks Alan for your Info and help.
How can I change that with regex?
From:
220 Txt Txt Txt
To:
220 | Txt Txt TxtOr delete and insert:
From:
10 Txt Txt Txt | 300
To:
10 | Txt Txt TxtSorry. I have no idea how to make regex do it…
-
I would do two separate steps:
find:
^(\d+ )([^|])
repl:${1}| ${2}
and then:
find:
(?-s)^(\d+ \|.*?) \|.*
repl:${1}
-
WooooooooW!
Alan -Big big thanks for your help! -
@Venus642 said in Need help for regular expression - find, insert and delete:
Big big thanks for your help!
Pay back by learning about how it worked, so that next time you don’t have to ask. :-)
Start with information HERE
-
Another option, in one step:
Search:
(?-s)(?:^(\d+) *?([A-Za-z]+))|( *?\| *?\d+)$
Replace:?1($1 | $2)
Have fun!
-
One step - Perfect…
Alan and astrosofist - Top help! -
@Venus642 said in Need help for regular expression - find, insert and delete:
One step - Perfect…
Yea, I wouldn’t get too bogged down in it needing to be a one-step operation.
If it is something you need to do often, you will make it a macro anyway (so you can give it a meaningful name).
And if it is a macro, it can just as well be two replacement steps (because, by the nature of macros, multiple steps look like one step). -
@Alan-Kilborn
Alan I have tested again and your solutions is better in my case. -
@Venus642 said in Need help for regular expression - find, insert and delete:
Alan … your solutions is better
Well, I certainly wasn’t trying to “win”. :-)
I often try to point out that a solution to such a problem doesn’t have to be all crammed into one operation.
It can make the operation harder to understand for a novice with regular expressions.