我试图替换字符串dart中的一个字符,但是找不到有效的方法。因为字符串在Dart中不是数组,所以我不能直接通过索引访问字符,也没有内置函数可以做到这一点。什么是有效的方法?
目前我正在做如下:
List<String> bedStatus = currentBedStatus.split("");
bedStatus[index]='1';
String bedStatusFinal="";
for(int i=0;i<bedStatus.length;i++){
bedStatusFinal+=bedStatus[i];
}
}
index是一个int,currentBedStatus是我试图操作的字符串。
8条答案
按热度按时间qojgxg4l1#
在特定索引处替换:
由于dart中的
String
是不可变的refer,因此我们无法编辑如下内容满足要求的有效方法为:
进入函数:
index
是 * 从零开始的 *。chy5wohz2#
您可以使用
replaceFirst()
。或者,如果你不想替换第一个,你可以使用一个开始索引:
zaq34kh63#
您可以使用replaceAll()。
von4xj4u4#
使用此行,您可以将
$
符号替换为空格''ujv3wf0j5#
您可以在构建函数中使用它来完成此操作。
5fjcxozz6#
以下是您可以执行的操作
下面是它在String扩展方法中的样子
v64noz0r7#
你可以使用这个函数,只是修改了Dinesh的答案
llew8vvj8#
你也可以使用子字符串而不用担心字符,从字符串创建子字符串并使用索引。