c如何比较两个字母匹配但其中一个有空格的字符串
本文关键字:一个 字符串 空格 何比较 比较 两个 | 更新日期: 2023-09-27 17:58:02
下面是我的代码,我如何使if
返回true,因为它当前跳过了if
语句,因为字符串值中有空格。
string instrucType = "FM";
string tenInstrucType = "FM ";
if (tenInstrucType.Equals(instrucType))
{
blLandlordContactNumberHeader.Visible = true;
lblLandlordContactNumber.Text = landlordData.LandlordContact.DefPhone;
lblLandlordEmailHeader.Visible = true;
lblLandlordEmail.Text = landlordData.LandlordContact.DefEmail;
}
使用Trim函数:
if (tenInstrucType.Trim().Equals(instrucType.Trim()))
不过,这只会从末端修剪。如果中间可能存在空间,请使用"替换"。
如果空白仅位于字符串的末尾,则修剪两个字符串:
if (tenInstrucType.Trim().Equals(instrucType.Trim()))
如果你想忽略所有空白字符,你可以从字符串中删除它们:
string normalized1 = Regex.Replace(tenInstrucType, @"'s", "");
string normalized2 = Regex.Replace(instrucType, @"'s", "");
if (normalized1 == normalized2) // note: you may use == and Equals(), as you like
{
// ....
}
尝试此条件:
if (tenInstrucType.Replace(" ",string.Empty).Equals(instrucType.Replace(" ",string.Empty))
修剪字符串:
if (tenInstrucType.Trim().Equals(instrucType.Trim()))
if (tenInstrucType.Replace(" ","").Equals(instrucType.Replace(" ","")))
对于这种情况,使用Trim
似乎是合适的,但请注意,Trim
只删除前导或结束空格;内部空间不会被移除。