8

私はDartを初めて使用し、基本的なライブラリの感覚をつかもうとしています。文字列の場合、trim()関数が提供されています。これは良いことですが、文字列の最初だけ、または最後だけで空白をトリミングする明確な方法はありませんか?見つかりません。ありがとうございます。

4

3 に答える 3

10

先頭または末尾の空白のみをトリミングするための特定の方法はありません。しかし、それらを実装するのは非常に簡単です。

/// trims leading whitespace
String ltrim(String str) {
  return str.replaceFirst(new RegExp(r"^\s+"), "");
}

/// trims trailing whitespace
String rtrim(String str) {
  return str.replaceFirst(new RegExp(r"\s+$"), "");
}
于 2013-01-01T04:57:11.900 に答える
1

ライブラリMoreDartには、Guavaに触発されたヘルパーがいくつかあり、文字列を最初、最後、またはその両方から効率的にトリミングできます。

import 'package:more/char_matcher.dart';

...

var whitespace = new CharMatcher.whitespace();    // what to trim

whitespace.trimFrom(input);   // trim from beginning and end
whitespace.trimLeadingFrom(input);   // trim from beginning
whitespace.trimTrailingFrom(input);   // trim from end
于 2014-03-09T10:34:07.380 に答える
1

今日、Quiverに追加trimLeftしましたが、将来のSDKリリースでtrimRightも追加されることがわかりました。Stringただし、今日はQuiverを使用できます。

これらの実装と正規表現ベースのソリューションの違いは、空白の定義がと同じであるということString.trimです。正規表現は、より少ない空白文字を認識します。

http://pub.dartlang.org/packages/quiver

于 2014-03-11T04:51:40.070 に答える