NOTE: I am not set on using VI, it is just the first thing that came to mind that might be able to do what I need. Feel free to suggest any other program.
I have a form with nearly 100 fields that I would like to auto-fill with PHP. I know how to do the autofill, but I would like to avoid manually adding the needed text to 100 fields.
Is there an automated way I can take the text:
<input name="riskRating" id="riskRating" type="text" />
and change it to:
<input name="riskRating" id="riskRating" type="text" value="<?php echo $data['riskRating']; ?>" />
Remember that I am wanting to do this to almost 100 fields. I am trying to avoid going to each field, pasting in the PHP code and changing the variable name manually.
I'm hoping some VI guru out there knows off the top of his/her head.
Taking some ideas from Zsolt Botykai and Mark Biek:
:%s:<input\(.* id="\([^"]*\)".*\) />:<input \1 value="<?php echo $data['\2']; ?> />:g
:%s:\(<input name="\([^"]\+\)" id="[^"]\+" type="text" \)/>:\1value="<?php echo $data ['\2']; ?>" />:gci
That's one line. HTH.
I did it like this. I'm not sure how to escape it to work in vim though. I'll edit if I can figure it out
This is the search part of the regex:
<input (.*) id="(.*?)" (.*) />
This is the replace part:
<input \1 id="\2" \3 value="<?php echo $data['\2']; ?>" />
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With