我在asp.net空网站上制作一个计算器,在其中添加一个网络表单..
我的问题是,如果用户输入
lightbox.option({
"alwaysShowNavOnTouchDevices" : true,
"showImageNumberLabel" : false,
"wrapAround" : true
});
2次作为+-*/
,我就会陷入困境,那么这个额外的50+-
应该从文本框中删除,或者如果用户输入-
然后应从文本框中删除50**
。
所以我写了这段代码..但它没有用......什么都没发生
*
对不起这个页面的标题..我不知道该怎么写这个问题的标题..
答案 0 :(得分:2)
String.Remove
不会更改原始字符串 - 它会返回一个新字符串。
String s = ResultBox.Text.ToString();
if (s[s.Length - 2].ToString().Equals(s[s.Length - 1].ToString()))
ResultBox.Text = s.Remove(s.Length - 1);
else
ResultBox.Text = s.Remove(ResultBox.Text.Length - 2, 1);
答案 1 :(得分:1)
尝试这样的事情:
var input = ResultBox.Text;
var operators = new[] { '+', '-', '*', '/' };
if (operators.Any (o => o == input[input.Length - 1])
&& operators.Any (o => o == input[input.Length - 2]))
{
input = input.Substring(0, input.Length - 1);
}
ResultBox.Text = input;