Как узнать общие символы в двух строках дротика - PullRequest
0 голосов
/ 04 октября 2019

Я хочу сравнить две строки, либо они содержат похожие символы, чтобы вывести количество общих символов

Ответы [ 3 ]

0 голосов
/ 04 октября 2019

Если вы хотите сопоставить строки, взгляните на расстояние Левенштейна:

Какие существуют алгоритмы для сравнения двух похожих строк?

0 голосов
/ 16 октября 2019

Другой способ:

import 'package:enumerable/enumerable.dart';

void main(List<String> args) {
  // Similar code units
  final similarCodeUnits = s1.codeUnits.intersect(s2.codeUnits);
  print(similarCodeUnits);

  // Similar runes
  final similarRunes = s1.runes.intersect(s2.runes);
  print(similarRunes);

  // Similar strings
  str2list(String s) => List.generate(s.length, (i) => s[i]);
  final similarStrings = str2list(s1).intersect(str2list(s2));
  print(similarStrings);
}

final s1 = 'abcd';
final s2 = 'cdefe';

Результат:

(99, 100)
(99, 100)
(c, d)
0 голосов
/ 04 октября 2019

Чтобы узнать общие символы между двумя строками, вы можете использовать метод ниже:

void findCommonCharacters(){
    var str="geeksforgeeks";
    var str2="platformforgeeks";

    Set<String> uniqueList={};
    for(int i=0;i<str.length;i++){
      if(str2.contains(str[i])){
        uniqueList.add(str[i]);
        print("val : ${str[i]}");
      }
    }
  }

Это даст вам общие символы между двумя строками.

Кроме того, чтобы сопоставить символы одной строки с другой, вы можете использовать стандартные методы String, такие как Содержит (), StartWith () и EndWith ().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...