29 lines
694 B
Dart
29 lines
694 B
Dart
extension StringExtensions on String {
|
|
String substringAfter(String pattern) {
|
|
final startIndex = indexOf(pattern);
|
|
if (startIndex == -1) return substring(0);
|
|
|
|
final start = startIndex + pattern.length;
|
|
return substring(start);
|
|
}
|
|
|
|
String substringBefore(String pattern) {
|
|
final endIndex = indexOf(pattern);
|
|
if (endIndex == -1) return substring(0);
|
|
|
|
return substring(0, endIndex);
|
|
}
|
|
|
|
String substringBeforeLast(String pattern) {
|
|
final endIndex = lastIndexOf(pattern);
|
|
if (endIndex == -1) return substring(0);
|
|
|
|
return substring(0, endIndex);
|
|
}
|
|
}
|
|
|
|
extension LetExtension<T> on T {
|
|
R let<R>(R Function(T) block) {
|
|
return block(this);
|
|
}
|
|
}
|