可以说我有以下字符串:
string str = "aaa123aaa";
Run Code Online (Sandbox Code Playgroud)
我将给定的字符串转换为char数组:
char[] array1 = str.ToArray();
Run Code Online (Sandbox Code Playgroud)
然后我想使用foreach循环遍历元素以将所有数字更改为空格
foreach (char i in array1)
{
if (char.IsNumber(i)) { // ? }
}
Run Code Online (Sandbox Code Playgroud)
我究竟如何将符合条件的字符更改为空格?我试过以下无济于事:
i = ' '; char(i) = ' '; array1(i) = ' ';
Run Code Online (Sandbox Code Playgroud)
他们都没有工作.
我如何与foreach循环中的元素进行交互?如果我使用数组很简单,在这种情况下我只会使用:
array1[i] = ' ';
Run Code Online (Sandbox Code Playgroud)
但我不知道如何在foreach循环中做同样的事情.
先感谢您!
如果foreach循环你不能改变集合的元素- 但你可以for循环:
for(int i=0; i < array1.Length; i++)
{
if (char.IsNumber(array1[i])) { array1[i] = ' ' }
}
Run Code Online (Sandbox Code Playgroud)
请注意,这并不会改变原来的字符串-如果你想这样做,有转化为更有效的方式char排列.
您可以使用for循环代替它,也可以使用LINQ
char[] array1 = str.Select(x => char.IsNumber(x) ? ' ' : x).ToArray();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
55 次 |
| 最近记录: |