dart:core
庫中String.replaceAllMapped
方法的用法介紹如下。
用法:
String replaceAllMapped(
Pattern from,
String replace(
Match match
)
)
用計算字符串替換與from
匹配的所有子字符串。
創建一個新字符串,其中匹配 from
的非重疊子字符串(由 from.allMatches(thisString)
迭代的子字符串)被在相應的 Match 對象上調用 replace
的結果替換。
這可用於將匹配項替換為取決於匹配項的新內容,這與替換字符串始終相同的 replaceAll 不同。
使用模式生成的Match 調用replace
函數,並將其結果用作替換。
下麵定義的函數使用 replaceAllMapped 將字符串中的每個單詞轉換為簡化的 'pig latin' :
String pigLatin(String words) => words.replaceAllMapped(
RegExp(r'\b(\w*?)([aeiou]\w*)', caseSensitive: false),
(Match m) => "${m[2]}${m[1]}${m[1]!.isEmpty ? 'way' : 'ay'}");
final result = pigLatin('I have a secret now!');
print(result); // 'Iway avehay away ecretsay ownay!'
相關用法
- Dart String.replaceAll用法及代碼示例
- Dart String.replaceRange用法及代碼示例
- Dart String.replaceFirstMapped用法及代碼示例
- Dart String.replaceFirst用法及代碼示例
- Dart String.fromCharCodes用法及代碼示例
- Dart String.trim用法及代碼示例
- Dart String.lastIndexOf用法及代碼示例
- Dart String.toLowerCase用法及代碼示例
- Dart String.substring用法及代碼示例
- Dart String.length用法及代碼示例
- Dart String.padRight用法及代碼示例
- Dart String.fromEnvironment用法及代碼示例
- Dart String.trimLeft用法及代碼示例
- Dart String.compareTo用法及代碼示例
- Dart String.trimRight用法及代碼示例
- Dart String.contains用法及代碼示例
- Dart String.indexOf用法及代碼示例
- Dart String.split用法及代碼示例
- Dart String.startsWith用法及代碼示例
- Dart String.splitMapJoin用法及代碼示例
- Dart String.operator_get用法及代碼示例
- Dart String.operator_multiply用法及代碼示例
- Dart String.endsWith用法及代碼示例
- Dart String.operator_plus用法及代碼示例
- Dart String.operator_equals用法及代碼示例
注:本文由純淨天空篩選整理自dart.dev大神的英文原創作品 replaceAllMapped method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。