我需要取值CS5999-1并将其转换为678359991.基本上用相同的ASCII值替换任何字母字符并去掉破折号。我需要摆脱非数字字符,并使值唯一(一些数据进来是全部数字,我确定这将使记录唯一)。字符串转换 - 删除一些字符并用ASCII码替换非数字
我玩过正则表达式,可以用空字符串替换字符,但不知道如何用ASCII值替换字符。
代码仍然停留在.NET 2.0(美国公司),以防万一任何想法。
我已经尝试了几种不同的方法来做到这一点,没有我不希望SO成员为我写代码。我正在寻找想法。
用空字符串替换字母字符我已使用: strResults = Regex.Replace(strResults,@“[A-Za-z \ s]”,string.Empty);
此循环将用自己替换字符。基本上,如果我可以替换找到一种方法来替换ACSII值的替换值我会拥有它,但试图将char值转换为int和我发现的其他几种不同的方法,并且都出现了一个错误。
foreach (char c in strMapResults)
{
strMapResults = strMapResults.Replace(c,c);
}
能否请您发布的代码,如果你尝试过什么。 –
如果内容包含其他ASCII字符,例如,您希望结果如何' “+ = />”'?你是否也需要这些被剥离,或者你能保证他们不会到达输入? –
Simon我知道这些值不会包含任何其他的ASCII字符,因为提供这个字符的源系统不允许这些字符。源系统只允许A-Z,然后将短划线作为数据字段的一部分。 – Steve