Quiero quitar todas las letras de una cadena, que no son numéricas. Preferiblemente una solución hecha con expresiones regulares o algo así. Y en C#. ¿Cómo hacer eso?¿Cómo quitar las letras de la cadena?
Respuesta
El uso de expresiones regulares:
str = Regex.Replace(str, @"\D+", "");
\D
es el complemento de \d
- coincide con todo lo que no sea un dígito. +
coincidirá con uno o más de ellos (por lo general, funciona un poco mejor que uno por uno).
Usando Linq (en .Net 4.0):
str = String.Concat(str.Where(Char.IsDigit));
string result = System.Text.RegularExpressions.Regex.Replace("text to look for stuff", "pattern", "what to replace it with")
string str = "ab123123abc"
str = Regex.Replace(str, @"[\w]", "");
referencia desde http://msdn.microsoft.com/en-us/library/844skk0h.aspx
'[\ w]' es redundante, no necesita una clase de caracteres. '\ w' es exactamente lo mismo. Sin embargo, '\ w' incluye letras y dígitos (y un guión bajo), por lo que terminas con caracteres especiales y espacios. – Kobi
i más bien como utilizar la no ^
como ^\d
o ^[0-9]
string resultString = null;
try {
resultString = Regex.Replace(subjectString, @"[^\d]+", "");
} catch (ArgumentException ex) {
// Syntax error in the regular expression
}
Bueno, eso es básicamente lo mismo, pero probablemente mejor conocido. El bloque 'try/catch' no es necesario, la única excepción posible es si' subjectString' es 'null', que es mejor que verifique. No obtendrás 'ArgumentException' para este patrón - es correcto':) 'Sin embargo, eso debería ser" '[^ \ d]' o '[^ 0-9]' " – Kobi
- 1. cómo hacer todas las letras en la cadena capital?
- 2. En Excel, ¿cómo extraigo las últimas cuatro letras de una cadena de diez letras?
- 3. Cómo quitar las comillas dobles de una cadena
- 4. Ordenando las letras de una cadena de texto en Python?
- 5. cómo probar una cadena de letras solamente
- 6. Verificar si la cadena contiene letras iniciales
- 7. parte Quitar de la cadena en Javascript
- 8. R quitar parte de la cadena
- 9. quitar el paréntesis de la cadena de
- 10. Quitar parte de la cadena después de "."
- 11. Cuántas letras diferentes hay en la cadena
- 12. comprobar cadena para todas las letras minúsculas en powershell
- 13. las variables de la subasta de letras en AWK
- 14. cómo quitar los caracteres en una cadena?
- 15. dividir una cadena de letras mayúsculas
- 16. ¿Cómo puedo encontrar las palabras en la matriz de letras
- 17. Cómo quitar la última coma?
- 18. ASP - Quitar comillas dobles de una cadena
- 19. ¿Cómo contar el número de letras en una cadena aleatoria?
- 20. ¿Cómo hago las letras de las coordenadas x?
- 21. quitar elemento de cadena de javascript gama
- 22. Quitar líder coma de una cadena
- 23. Eclipse - cómo quitar la bombilla de las advertencias
- 24. ¿Cómo comprobar si una cadena contiene letras inglesas (A-Z)?
- 25. Quitar dos caracteres de una cadena
- 26. ¿Cómo convertir una cadena de letras cirílicas rusas?
- 27. Cómo separar letras y dígitos de una cadena en php
- 28. Ordenar cadenas, primeras letras primero, luego letras dentro de las palabras
- 29. Cómo dividir una cadena entre letras y dígitos (o entre dígitos y letras)?
- 30. Contar letras mayúsculas en cadena usando perl
Umm ¿de acuerdo? ¿Cómo es esto útil? ¿Cómo funciona Regex? ¿Cómo usas misteriosamente esta cosa 'patrón'? ¿Y cómo responde esto a la pregunta? – Jonas
Mi suposición fue simplemente que él no sabía cómo llamar a una regex reemplazar en C# en lugar de querer el código exacto para hacerlo. Después de leer las otras respuestas, me di cuenta de que mi respuesta era deficiente, pero gracias por señalar que estoy equivocado. – Buildstarted