如何移除西班牙语字符串中的指定字符?str.Trim方法无效求助
解决字符串移除指定字符的问题
你用str.Trim('p', 'P', '[', ']')没效果的核心原因是:Trim方法只处理字符串首尾的指定字符,而你字符串里的[P200]这类目标字符在内容中间,所以完全不会被触及。
下面给两种实用的解决方案:
方法一:逐个替换(简单直接)
用string.Replace方法,把要移除的字符逐个替换为空字符串,示例代码:
string str = "¿Quiere poner en blanco la pantalla? Presione 1 para la pantalla en blanco, presione 2 para mantener la pantalla. Para cancelar esta operación, presione la tecla cancelar [P200] Presione la tecla inferior derecha para ajustar el volumen [P200] Para repetir las instrucciones, presione la tecla inferior izquierda en el teclado"; // 先移除 [ 和 ] string cleanedStr = str.Replace("[", "").Replace("]", ""); // 如果还需要移除p和P,继续追加替换 cleanedStr = cleanedStr.Replace("p", "").Replace("P", "");
方法二:正则表达式(高效批量处理)
如果要移除的字符较多,用正则表达式一次性匹配所有目标字符,替换为空:
using System.Text.RegularExpressions; string str = "¿Quiere poner en blanco la pantalla? Presione 1 para la pantalla en blanco, presione 2 para mantener la pantalla. Para cancelar esta operación, presione la tecla cancelar [P200] Presione la tecla inferior derecha para ajustar el volumen [P200] Para repetir las instrucciones, presione la tecla inferior izquierda en el teclado"; // 匹配P、p、[、]任意一个,替换为空 string cleanedStr = Regex.Replace(str, @"[Pp\[\]]", "");
内容的提问来源于stack exchange,提问作者Chanikya
相关产品推荐
相关产品推荐

