在StackOverflow上四处查看并没有找到问题的答案之后,我决定在此处发布问题。
我想一一分割rdSplited
值,但自动取决于rdSplited.length
,例如,如果这里的值是4
,我想分割那四个字符串的值。
我曾考虑过在这里使用for
,但我真的不知道该怎么做。
我感兴趣的索引值为[0],因为它是我要用于按钮的字符串。
这些值应该用于在弹出窗口上创建可单击的列表 View 。
String responseData = response.body;
responseData = responseData.replaceAll("\"", "");
responseData = responseData.replaceAll("}", "");
responseData = responseData.replaceAll("{", "");
responseData = responseData.replaceAll("d", "");
responseData = responseData.replaceAll(":", "");
//split string
var rdSplited = responseData.split('§');
var intx = rdSplited.length;
var intxed = rdSplited[0].split('#');
PS:有没有一种方法可以将此代码优化为一行而不是5行? responseData = responseData.replaceAll("\"", "");
responseData = responseData.replaceAll("}", "");
responseData = responseData.replaceAll("{", "");
responseData = responseData.replaceAll("d", "");
responseData = responseData.replaceAll(":", "");
#Edit 1:我谈论的索引值[0]是分割的var intxed = rdSplited[0].split('#');
后获得的索引
最佳答案
您可以通过执行以下操作使用正则表达式执行replaceAll
:responseData = responseData.replaceAll(new RegExp(r'd|\\|}|{|:'),"");
示例:
String testText = "abcd:efgh:jkl::123456::idk{}idk{hi}\\answering\\";
String replaceText = testText.replaceAll(new RegExp(r'd|\\|}|{|:'),"");
print(replaceText);
输出abcefghjkl123456ikikhianswering
这会将五行减少为一行。
关于flutter - 如何从表[Flutter] [Dart]中拆分所有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63138419/