Есть ли встроенные библиотеки в C# для извлечения слов Из строки, разделенной запятыми, без использования массива. Я. Я знаю расщепленной функции, но если я прав, мы должны использовать массив для него ... я не хочу использовать массив ...Извлечение слов Из строки, разделенной запятой, без использования массива
ответ
Вы можете использовать метод String.Split()
var myString = "Hello, World, I, am, a, comma, separated, string"
foreach (var item in myString.Split(new Char [] {',')) {
// ...
}
Для этого потребуется массив. –
Кроме того, метод Split не принимает строку, а массив символов. –
@NeilKnight Я не думаю, что в этом случае OP заботится о внутренних языках. Я предполагаю, что он просто не хочет явно хранить строки в массиве. Но, может быть, я ошибаюсь, спасибо за нисходящее голосование. –
Учитывая ваш комментарий на собственном посту, я полагаю, это то, что вы хотите:
String myString = "this,is,a,string";
String separator = ",";
MethodName(myString.Split(separator.ToCharArray()));
...
public void MethodName(String[] words) {
// do stuff here
}
Если нет, уточнить ваш вопрос.
EDIT
Пожалуйста, пожалуйста, только более ясно с вашим вопросом. Что вы хотите проверить? Если слово соответствует определенному шаблону? Если слово существует вообще?
Вы можете сделать очень неприятный цикл for
, где вы ищите значения ,
, а затем сравниваете с даты начала 1 ,
. Вы можете использовать SubString()
и IndexOf()
, чтобы добиться этого, но это не очень показательно и элегантно.
Я кое-что хочу, но могу предложить более оптимизированный способ сделать это – Jay
Честно говоря, я бы сказал, что массив оптимизирован. –
Как насчет пробовать под другим углом.
Вы можете прокрутить свои слова, чтобы сравнить и проверить, существуют ли они в заданной строке, например.
string listOfWords = "Some, text, to, look, through";
if (WordExists(listOfWords, "look"))
{
}
private bool WordExists(string listToCheck, string wordToFind)
{
return listToCheck.Contains(wordToFind);
}
экстракт и затем что-то делать? –
Как вы их хотите сохранить? –
, а затем перейти к другой функции ..... – Jay