• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 438
  • Last Modified:

Regular Expression in Visual Studio 2008

Hiya

I have a long list of variables which I need to add to a copy constructor e.g.

x1 = rhs.x1;
y4 = rhs.y4;
z100 = rhs.z100;
y8 = rhs.y8;

etc. (involving hundreds of variables).

Now I have another list which looks like this:

x1 = 2.34;
y4 = 8888;
z100 = 3.2;
y8 = FALSE;

etc.

I feel there must be a way to use regular expressions to convert the second list into the first.

Can anybody tell me how to do this using regular expressions in Visual Studio 2008 (MFC) i.e. from the VS editor.

Thanks

John


0
IssacJones
Asked:
IssacJones
  • 6
  • 4
2 Solutions
 
abelCommented:
having so many variables seems problematic to me... but that's another subject.

If it is all rhs.[+original name] on the right side, you can do this:

find: ^([^ ]+).*
replace: $1 = rhs.$1
0
 
abelCommented:
oh, I forgot the closing semi colon:

replace: $1 = rhs.$1;
0
 
käµfm³d 👽Commented:
If within the editor you mean inside the Find/Replace box, then your regex would be:
Find:
    ^{[^:b]+}.+
 
Replace:
    \1 = rhs.\1

Open in new window

0
 [eBook] Windows Nano Server

Download this FREE eBook and learn all you need to get started with Windows Nano Server, including deployment options, remote management
and troubleshooting tips and tricks

 
käµfm³d 👽Commented:
Sheesh...  Same mistake as Abel :P

With semicolon:
Find:
    ^{[^:b]+}.+
 
Replace:
    \1 = rhs.\1;

Open in new window

0
 
abelCommented:
lol

dollar syntax doesn't work in replace box? Ah, the whole syntax is different. Great, I always forget that. Just tested a bit with mine and yours and since most of the time the code is indented, I come up with this blended expression:

find:    ^{:b+[^:b]+}.*

replace:    \1 = rhs.\1;
0
 
abelCommented:
tx for the grade but...

this seems to be the day that the splitting points button is not found by the askers.. you are the fourth already. Are you aware of the possibility to split points if more experts have worked towards a solution?

If you still want to do that, please use the Request Attention button to ask for reopening of the question and once a moderator has done so (can take a few hours) you can reassign the split points.
0
 
IssacJonesAuthor Commented:
hi abel, kaufmed

you prememted an email to experts exchange. I had indeed wanted to split the points but something strange happened during the allocation (which wasn't helped by my screen freezing and having to re-boot). I will attempt to split the points again.
0
 
abelCommented:
aha, good news ;) (actually, not so good for me, because I will earn less points lol).
0
 
käµfm³d 👽Commented:
abel...  I must say: You are a gentleman, sir. In any event, I was upset at myself for forgetting that the lines in the editor had leading space!! :)
0
 
abelCommented:
Don't be upset about silly things like that. I only found out by experimenting myself. Often, obvious things are only obvious once discovered ;-)
0
 
käµfm³d 👽Commented:
Yeah. I'm over it now (patching the hole in the wall) ;)

j/k
0

Featured Post

How to Use the Help Bell

Need to boost the visibility of your question for solutions? Use the Experts Exchange Help Bell to confirm priority levels and contact subject-matter experts for question attention.  Check out this how-to article for more information.

  • 6
  • 4
Tackle projects and never again get stuck behind a technical roadblock.
Join Now