* 字符串
* 1、在字符串中搜索
* 2、从字符串中提取数据
* 3、首字母大小写转换
* 4、Trimming 和空字符串
* 5、替换部分字符串
* 6、构建一个字符串
//1、在字符串中搜索
void stringSearch() {
final String str = 'Never odd or even';
// 检查一个字符串是否包含另一个字符串。
bool isContains = str.contains('odd');
print(isContains.toString()); // true
// 一个字符串是否以另一个字符串为开头?
bool isStart = str.startsWith('Never');
print(isStart.toString()); // true
// 一个字符串是否以另一个字符串为结尾?
bool isEnd = (str.endsWith('event'));
print(isEnd.toString());
// 查找一个字符串在另一个字符串中的位置
int pos = str.indexOf('or');
print(pos.toString()); // 10
}
// 2、从字符串中提取数据
void stringSub() {
// 获取一个子字符串
final String str = 'Never odd or even';
String childStr = str.substring(6, 9);
print(childStr); //odd
// 使用字符串模式分割字符串。
String sourceString = 'Structured web apps ';
var parts = sourceString.split(' ');
int sz = parts.length;
print('parts len = '+ sz.toString()+' :');
for(var elem in parts) {
print(elem);
}
// 通过下标获取 UTF-16 编码单元
String s = sourceString[0];
print(s);
//可以轻松的对字符串的字母大小写进行转换:
String uppercase = sourceString.toUpperCase();
print(uppercase);
String lowercase = uppercase.toLowerCase();
print(lowercase);
}
//Trimming 和空字符串
void trimmingOpt() {
print(' hello '.trim());
print(''.isEmpty);
print(' '.isNotEmpty);
}
void replaceString() {
var greetingTemplate = 'Hello, NAME!';
var greeting =
greetingTemplate.replaceAll(RegExp('NAME'), 'Bob');
print(greeting);
}
//构建一个字符串 StringBuffer 在调用 toString() 之前, StringBuffer 不会生成新字符串对象;
void buildString() {
var sb = StringBuffer();
sb
..write( 'Use a StringBuffer for')
..writeAll(['efficient', 'string', 'creation'], ' ')
..write('.');
print(sb.toString());
}
void main(List<String> args) {
// stringSearch();
// stringSub();
// trimmingOpt();
// replaceString();
buildString();
}
网友评论