我如何大写字符串的第一个字符,而不改变任何其他字母的情况?
例如,“this is a string”应该给出“this is a string”。
我如何大写字符串的第一个字符,而不改变任何其他字母的情况?
例如,“this is a string”应该给出“this is a string”。
当前回答
最简单的答案是:
首先使用下标将字符串的第一个字母大写,然后将字符串的其余部分拼接起来。
这里username是字符串。
用户名[0].toUpperCase() + username.substring(1);
其他回答
有一个包含该函数的utils包。它有一些更好的方法来操作字符串。
安装方法:
dependencies:
basic_utils: ^1.2.0
用法:
String capitalized = StringUtils.capitalize("helloworld");
Github:
https://github.com/Ephenodrom/Dart-Basic-Utils
你可以使用字符串库的capitalize()方法,它现在在0.1.2版本中可用, 并确保在pubspec.yaml中添加依赖:
dependencies:
strings: ^0.1.2
并将其导入dart文件:
import 'package:strings/strings.dart';
现在你可以使用这个方法了,它的原型如下:
String capitalize(String string)
例子:
print(capitalize("mark")); => Mark
void main() {
print(capitalize("this is a string"));
// displays "This is a string"
}
String capitalize(String s) => s[0].toUpperCase() + s.substring(1);
查看在DartPad上运行的代码片段:https://dartpad.dartlang.org/c8ffb8995abe259e9643
在此分享我的答案
void main() {
var data = allWordsCapitilize(" hi ram good day");
print(data);
}
String allWordsCapitilize(String value) {
var result = value[0].toUpperCase();
for (int i = 1; i < value.length; i++) {
if (value[i - 1] == " ") {
result = result + value[i].toUpperCase();
} else {
result = result + value[i];
}
}
return result;
}
final helloWorld = 'hello world'.toUpperCase(); 文本(helloWorld);