黑马程序员技术交流社区
标题:
字符串处理问题?
[打印本页]
作者:
刘欢
时间:
2013-6-25 15:17
标题:
字符串处理问题?
本帖最后由 刘欢 于 2013-6-28 16:56 编辑
//4、让用户输入一英文语句,这句换包含多个e,分别找出所有e的位置。
Console.WriteLine("请输入一句英文语句:");
string input = Console.ReadLine();
//input.Contains
for (int i = 0; i < input.Length; i++)
{
if (input[i]=='e')
{
Console.Write(i+1+",");
}
}
Console.ReadKey();
复制代码
有没有使用 字符串处理 的方法,解决这个问题?
作者:
风雪再现
时间:
2013-6-25 15:54
Console.WriteLine("请输入一个字符串:");
string strInput = Console.ReadLine();
char[] chars = strInput.ToCharArray();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < strInput.Length; i++)
{
if (chars[i] == 'e')
{
sb = sb.Append(i.ToString ()+" ");
}
}
Console.WriteLine(sb.ToString ());
这里你可以用StringBuilder ,也可以直接用string,一般遇到字符串相加,我都是前者
QQ图片20130625155213.jpg
(8.26 KB, 下载次数: 0)
下载附件
2013-6-25 15:53 上传
作者:
万大述
时间:
2013-6-25 17:03
如有特殊用途,可定义数组标记存放,代码如下:
Console.WriteLine("请输入一个字符串:");
string Input = Console.ReadLine();
char[] testChars = Input.ToLower().ToArray(); //转换成小写并分解成字符数组
int[] position = new int[Input.Length]; //标记下标
for (int i = 0; i < Input.Length; i++) //得到标记
{
if (testChars[i] == 'e')
{
position[i] = 1;
}
}
for (int j = 0; j < Input.Length; j++) //打印标记
{
if (position[j] == 1)
{
Console.WriteLine("第{0}个字符是‘e’!", j+1);
}
}
Console.ReadKey();
作者:
刘欢
时间:
2013-6-28 16:56
多谢了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2