dart 如何删除字符串中不需要的字符

oprakyz7  于 2023-03-10  发布在  其他
关注(0)|答案(3)|浏览(254)

我弄混了dart中的一些字符串转换。

for example = String Stringsample = "['2022-11-24', '2022-11-30']";

Stringsample是字符串,而不是列表,所以我想在这个字符串中得到两个项目,怎么做,

Expecting output be like:
  String str1 = '2022-11-24',
 String str2 = '2022-11-30',

如何做到这一点,我卡住这个转换,请添加您宝贵的重播

bogh5gae

bogh5gae1#

请尝试以下代码:

String Stringsample = "['2022-11-24', '2022-11-30']";
String modifiedString = "";
List<String> datesList = [];

modifiedString = Stringsample.substring(1, Stringsample.length - 1);
datesList = modifiedString.split(",").toList();

String str1 = datesList[0];
String str2 = datesList[1];
yacmzcpb

yacmzcpb2#

以下是三个例子:

import 'dart:convert';

void main() {
  final String stringSample = "[\"2022-11-24\", \"2022-11-30\"]";

  final List<dynamic> listDynamicSample = json.decode(stringSample);
  
  final String str1 = listDynamicSample[0];
  final String str2 = listDynamicSample[1];
  
  print(str1);
  print(str2);
}
import 'dart:convert';

void main() {
  final String stringSample = "['2022-11-24', '2022-11-30']";

  final List<dynamic> listDynamicSample = json.decode(stringSample.replaceAll("'", '"'));

  final String str1 = listDynamicSample[0];
  final String str2 = listDynamicSample[1];

  print(str1);
  print(str2);
}
void main() {
  final String stringSample = "['2022-11-24', '2022-11-30']";

  final List<String> listDynamicSample = stringSample.split("'");

  final String str1 = listDynamicSample[1];
  final String str2 = listDynamicSample[3];

  print(str1);
  print(str2);
}
aoyhnmkz

aoyhnmkz3#

不像上面的人,还有一种使用正则表达式的方法(我认为这更好)。

String sample = "['2022-11-24', '2022-11-30']";

var test = sample.replaceAll(RegExp(r'''[\[\]'" ]'''), '').split(',');

String str1 = test[0];
String str2 = test[1];

// print(test); // [2022-11-24, 2022-11-30]
// print(str1); // 2022-11-24
// print(str2); // 2022-11-30

相关问题