3

ダーツの正規表現を使用して、一致を見つけようとしています。

Dart コード: http://try.dartlang.org/s/SY1B

  RegExp exp = const RegExp("/my/i");
  String str = "Parse my string"; 
  Iterable<Match> matches = exp.allMatches(str);
  for (Match m in matches) {
    String match = m.group(0);
    print(match);
  }

文字列のすべての一致を見つけるために、大文字と小文字を区別しない検索を実行しようとしています。一致がないと言われています。私は正規表現が初めてなので、どこかを台無しにしていると確信しています。一致を見つけるためにコードを変更するにはどうすればよいですか?

コンテキストのために、次のコードで達成されると思われる任意の文字列を検索するようにコードを変更する予定です。

RegExp exp = const RegExp("/${searchTerm}/i");
4

1 に答える 1

7

/pattern/flags 構文は JavaScript で機能しますが、Dart には正規表現リテラルがないため、Dart では機能しません。代わりに、ドキュメントはこれを示しています:

const RegExp(String pattern, [bool multiLine, bool ignoreCase])

したがって、コンストラクターは次のようになります。

RegExp exp = const RegExp("my", ignoreCase: true);
于 2012-05-12T20:57:58.900 に答える