I don't have to persuade anybody that using regex saves a lot of time.
Recently I was about to add 20 new parameters to the stored procedure updating record.
The reason for that was the change in table definiton.
I had to make following steps:
1) add new parameters to sp,
2) add this parameters to update statement
3) add this parameters to insert statement
I could use copy and paste, because all three steps needed only some changes withing string with new columns.
1) The sample from input sql I had to write for sp Input params
@CategoryL3 nvarchar(50), @CategoryL4 nvarchar(50),
2) The sample from update statement
[CategoryL3]=@CategoryL3, [CategoryL4]=@CategoryL4,
3) The sample from insert statement
[CategoryL3], [CategoryL4]
and then:
@CategoryL3, @CategoryL4
Here is regex to find things from first sample:
[@]{.[^@ ]*} .[^@ ]*,
- in {} brackets we get the expression we want to extract from what has been found.
I'm looking for:
- @ at sing
- ".[^@ ]* "- all the signs (.*) until space (which is after star) that don't contain @ sign
- then there is space and anything thats between this space and comma, but again without @ sign (to avoid greedy results) .[^@ ]*
then in replace with text box I can put \1 which result with setting it to the values I enclosed with curly brackets.