Я работаю в .net C#, и у меня есть текст строки = «Какой бы текст FFF вы не могли представить FFF»; Мне нужно получить количество раз, когда в тексте строки появляется «FFF». Как я могу это исправить? Спасибо.Количество конкретных строк внутри строки
ответ
Вы можете использовать регулярные выражения для этого и прямо все, что вы хотите:
string s = "Whatever text FFF you can FFF imagine";
Console.WriteLine(Regex.Matches(s, Regex.Escape("FFF")).Count);
спасибо, что много прекрасно работает – euther
Используйте System.Text.RegularExpressions.Regex для этого:
string p = "Whatever text FFF you can FFF imagine";
var regex = new System.Text.RegularExpressions.Regex("FFF");
var instances = r.Matches(p).Count;
// instances will now equal 2,
Вот 2 подходы. Обратите внимание, что регулярное выражение должно использовать метасимвол слова \b
, чтобы избежать неправильного совпадения вхождений с другими словами. Решения, размещенные до сих пор, этого не делают, что неверно считать «FFF» в «fooFFFbar» как совпадение.
string text = "Whatever text FFF you can FFF imagine fooFFFbar";
// use word boundary to avoid counting occurrences in the middle of a word
string wordToMatch = "FFF";
string pattern = @"\b" + Regex.Escape(wordToMatch) + @"\b";
int regexCount = Regex.Matches(text, pattern).Count;
Console.WriteLine(regexCount);
// split approach
int count = text.Split(' ').Count(word => word == "FFF");
Console.WriteLine(count);
+1 за полезную информацию. Однако ОП никогда не указывает, что он считает слова, поэтому это вопрос интерпретации. –
@ João спасибо, I + 1 вы раньше, прежде чем принимать решение об этих дополнительных подходах. –
Вот альтернатива регулярных выражений:
string s = "Whatever text FFF you can FFF imagine FFF";
//Split be the number of non-FFF entries so we need to subtract one
int count = s.Split(new string[] { "FFF" }, StringSplitOptions.None).Count() - 1;
Вы можете легко настроить это использовать несколько различных строк, если это необходимо.
- 1. Gridview Количество строк для конкретных строк
- 2. Напечатать количество строк строки
- 3. Как получить количество конкретных строк из другой таблицы в подзапросе
- 4. Подсчет количества конкретных символов внутри строки
- 5. Количество строк строки в Java
- 6. Как определить количество строк строки
- 7. Получить Количество Sepecific Строки Строки Внутри
- 8. Удаление конкретных строк из dataframe
- 9. Отображать астропию Количество внутри строки LaTeX
- 10. Цвет конкретных строк с JQuery
- 11. Commit конкретных строк файла мерзавец
- 12. Использование Sed нескольких шаблонов поиска конкретных строк
- 13. Проблемы выбора конкретных строк
- 14. Получение конкретных строк из URL
- 15. выбор большого количества (конкретных) строк в файле
- 16. Как получить количество строк внутри метки Gridview
- 17. Как рассчитать количество строк кода внутри программы?
- 18. IOS Сортировка массива конкретных строк
- 19. Получение строк внутри разделенной строки
- 20. Javascript - Приращение конкретных номеров строки
- 21. Количество вводов нескольких конкретных слов
- 22. Количество нулей в конкретных столбцах
- 23. JTextArea: Ограничить ширину строки и количество строк?
- 24. Подсчитайте количество строк строки в месяц
- 25. отдельная часть строки в большее количество строк
- 26. Как получить строки и количество строк одновременно
- 27. Подсчитайте количество строк новой строки в файле
- 28. Получить общее количество строк после вставки строки?
- 29. Подсчитайте количество строк и слов из строки
- 30. Получить общее количество строк, содержащих строки
Я считаю, что «частота» - лучшее слово, чем «количество». – polygenelubricants
Учитывается ли «X FFFF Y» как ноль, одно или два совпадения? –
@polygenelubricants: Нет, «количество» лучше, чем «частота» здесь. (Хотя «число» было бы более идиоматичным, чем «количество».) Количество * * просто означает подсчет. Частота * * подразумевает счетчик * относительно того, как часто это происходит, учитывая размер выборки *. Например, * количество * «FFF» в данном предложении равно двум. * Частота * FFF - это «каждое третье слово». –