Quiero cambiar un grupo grande de identificadores de minúsculas a mayúsculas. Tengo un archivo con un número (cientos o más) de identificadores únicos que comienzan con q_
. Construí una expresión regular que define esta coincidencia: (q_\w*)
y ahora quiero aplicar el comando ~
para hacer que todas sean mayúsculas (actualmente son minúsculas). Siento que VIM es más que capaz de hacer esto, pero mi habilidad con eso aún no está allí, ¿puedes ayudarme?VIM: Seleccione una expresión regular, luego aplique un comando
5
A
Respuesta
6
Si desea arriba de los casos todo el identificador, para cada identificador en el archivo, utilice este comando sustituto:
%s/q_\w\+/\U&/g
El truco aquí es &
en el patrón de sustitución, que hace referencia a todo el partido. Esto sustituirá, p. q_identifier1
con Q_IDENTIFIER1
.
Si sólo desea up-caso el q
, entonces usted puede utilizar:
%s/q_\(\w\+\)/Q_\1/g
ahora q_identifier1
se cambiará a: Q_identifier1
Si desea arriba de los casos todo lo excepto la q_
, a continuación, utilizar:
%s/q_\(\w\+\)/q_\U\1/g
Ahora q_identifier1
se cambiará a: q_IDENTIFIER1
0
también se puede utilizar una macro para este propósito:
- buscar su patrón:
/q_\w*
- iniciar la grabación de una macro:
qq
- hacen mayúsculas y Buscar siguiente:
llve~n
- deja de grabar tu macro:
q
- repite como neccessary:
[email protected]
pero nada más o que envolverá y cambiar de nuevo a minúsculas (o, alternativamente, se puede apagar o wrapscan
ignorecase
temporalmente).
Cuestiones relacionadas
- 1. ¿Expresión regular para encontrar una expresión regular?
- 2. ¿Hay una expresión regular para detectar una expresión regular válida?
- 3. Comprueba si una expresión regular cubre otra expresión regular
- 4. ¿Cómo validar una expresión regular?
- 5. expresión regular "contiene" otra expresión regular
- 6. Coincidencia de un + en una expresión regular
- 7. Simplifica una expresión regular compleja
- 8. ¿Cómo descompilar una expresión regular?
- 9. Una expresión regular rápida necesaria
- 10. Vim: redefina un comando
- 11. expresión regular lookahead negativo
- 12. expresión regular para los dígitos en Unix encontrar comando
- 13. Crea un programa que ingresa una expresión regular y emite cadenas que satisfacen esa expresión regular
- 14. ¿Cómo usar la expresión regular con el comando find?
- 15. La construcción de una expresión regular Compositor
- 16. Expresión regular para permitir caracteres alfanuméricos, solo un espacio y luego alpahnumeric
- 17. Interpolando una cadena en una expresión regular
- 18. si existe, seleccione Insertar y luego seleccione ELSE
- 19. ¿Cómo puedo generar texto que coincida con una expresión regular de una expresión regular?
- 20. Expresión regular: cómo encontrar una coincidencia dentro de un partido?
- 21. ¿Cómo puedo expandir una configuración o variable en una expresión regular vim?
- 22. Hacer una expresión regular de JavaScript equivalente a una expresión regular PHP
- 23. Expresión regular: rango numérico
- 24. Rompecabezas de expresión regular
- 25. Expresión regular para alfanumérico
- 26. Expresión regular reemplazar
- 27. En VIM, ¿cómo puedo eliminar todas las líneas hasta que se encuentre una expresión regular?
- 28. Agregar un comando a Vim
- 29. c expresión regular howto
- 30. Netbeans multilínea Expresión Regular
Gracias por la respuesta rápida, esto parece ser lo que estoy buscando, excepto, por ejemplo, tengo: q_name_confirm -> Quiero: q_NAME_CONFIRM, con la q todavía minúscula, gracias –
con ese último ejemplo, Me aparece el error: E486: Patrón no encontrado: q _ \ (\ w + q \) –
sí, eliminé la segunda q ¡y funcionó muy bien! gracias, también tuve que cambiar el '+' a '*', ¿tiene sentido? –