Pregunta

NOTA:Yo no soy de conjunto sobre el uso de VI, que es sólo la primera cosa que me vino a la mente que podría ser capaz de hacer lo que necesito.Siéntase libre de sugerir cualquier otro programa.

Tengo un formulario con cerca de 100 campos en los que me gustaría de auto-llenado con PHP.Yo sé cómo hacer el autocompletar, pero me gustaría evitar la adición manual de la necesaria texto a 100 campos.

Es allí una manera automatizada puedo tomar el texto:

<input name="riskRating" id="riskRating" type="text" />

y el cambio de:

<input name="riskRating" id="riskRating" type="text" value="<?php echo $data['riskRating']; ?>" />

Recuerda que yo estoy queriendo hacer esto a casi 100 campos.Estoy tratando de evitar ir a cada campo, pegar en el código PHP y cambiar el nombre de la variable manualmente.

Estoy esperando que algún VI gurú allí conoce a la parte superior de su cabeza.

¿Fue útil?

Solución

Tomando algunas ideas de Zsolt Botykai y Marca Biek:

:%s:<input\(.* id="\([^"]*\)".*\) />:<input \1 value="<?php echo $data['\2']; ?> />:g

Otros consejos

:%s:\(<input name="\([^"]\+\)" id="[^"]\+" type="text" \)/>:\1value="<?php echo $data ['\2']; ?>" />:gci

Esa es una línea.HTH.

Lo hice así.No estoy seguro de cómo escapar de ella para trabajar en vim, aunque.Voy a editar si puedo averiguar

Esta es la búsqueda que parte de la expresión regular:

<input (.*) id="(.*?)" (.*) />

Este es el reemplazo de la parte:

<input \1 id="\2" \3 value="<?php echo $data['\2']; ?>" />

paso 1 :la búsqueda de la chaine type="text" :

/type="text"

Compruebe que todas las cadenas desea que están atrapados.paso 2 :Sustituir con la que quería cadena :

:%s//type="text" value="<?php echo $data riskrating]; ?>"/g

paso 3 :Ser feliz !

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top