2010-09-30 88 views
4

这段代码做了什么?Substring()使用混淆

txtCardNo.Text.Trim().Substring((txtCardNo.Text.Trim().Length - 4), 4) 
+0

至少它不会像'txtCardNo.Text.Trim()反向()以(4).Reverse();'。 – Greg 2010-09-30 19:09:11

回答

17

这最后4个字符会从txtCardNo(不带前导或结尾空格),但它会更好,如果是这样的:

var result = txtCardNo.Text.Trim(); 
result = result.Substring(result.Length - 4); 

编辑:

此外,请注意,这如果修剪后的字符串少于4个字符将会抛出错误。你可以用这样的处理:

var result = txtCardNo.Text.Trim(); 
if (result.Length >=4) 
    result = result.Substring(result.Length - 4); 
else 
    // do domething 
3

它得到卡号的最后四位数。

进行分解:

txtCardNo.Text = the contents of the Card Number textbox 
.Trim() = removes spaces from the end 
.Substring(x,y) = returns y characters from the string, starting at position x 

在这种情况下,位置x是串减去4的长度,所以我们返回的最后四个字符。