Распознавание лиц с использованием Emgu cv в C # с несколькими камерами

Предположим, мы хотим найти строковую переменную needle в строковой переменной haystack. Есть три ошибки:

  1. Интернационализированные приложения должны избегать string.toUpperCase и string.toLowerCase. Используйте регулярное выражение, которое вместо этого игнорирует случай. Например, var needleRegExp = new RegExp(needle, "i");, а затем needleRegExp.test(haystack).
  2. Как правило, вы можете не знать значение needle. Будьте осторожны, чтобы needle не содержал никаких регулярных выражений специальных символов . Побегите их с помощью needle.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");.
  3. В других случаях, если вы хотите точно сопоставить needle и haystack, просто игнорируя случай, не забудьте добавить "^" в начале и "$" в конце вашего конструктора регулярных выражений.

Принимая во внимание точки (1) и (2), примером может быть:

var haystack = "A. BAIL. Of. Hay.";
var needle = "bail.";
var needleRegExp = new RegExp(needle.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), "i");
var result = needleRegExp.test(haystack);
if (result) {
    // Your code here
}

0
задан user3678813 13 July 2018 в 11:57
поделиться