Есть ли способ определить, имеет ли строка пробел в нем?Проверьте, имеет ли строка пробел между (или в любом месте)
sossjjs sskkk
должен вернуть true
, а sskskjsk
должен возвращать значение false.
"sssss".Trim().Length
, похоже, не работает.
Есть ли способ определить, имеет ли строка пробел в нем?Проверьте, имеет ли строка пробел между (или в любом месте)
sossjjs sskkk
должен вернуть true
, а sskskjsk
должен возвращать значение false.
"sssss".Trim().Length
, похоже, не работает.
Как насчет ..
string s = "Hello There";
bool fHasSpace = s.Contains(" ");
Для кого-то, пытающегося не использовать магические строки, это не решение. –
Это действительно лучшее решение, все, что вам нужно сделать, чтобы проверить, используется ли пространство, если оно выполнено. –
Trim()
удалит только начальные и конечные пробелы.
Try .Contains()
, чтобы проверить, если строка содержит пробелы
"sossjjs sskkk".Contains(" ") // returns true
Хороший звонок. должен был подумать об этом! – dotnetdev
Также можно использовать регулярные выражения, чтобы достичь этого, если вы хотите, чтобы проверить любой символ пробела, а не только пространство.
var text = "sossjj ssskkk";
var regex = new Regex(@"\s");
regex.IsMatch(text); // true
Вы также можете использовать статический 'Regex.IsMatch (text, @" \ s ")' –
Если вы делаете много сравнений, то стоит использовать версию экземпляра, но для общего случая статический 'Regex.IsMatch() 'более чем достаточно http://stackoverflow.com/a/414411/132599. –
Эта функция поможет вам ...
bool isThereSpace(String s){
return s.Contains(" ");
}
Как насчет:
myString.Any(x => Char.IsWhiteSpace(x))
Или, если вам нравится с помощью "метода группы" синтаксис:
myString.Any(Char.IsWhiteSpace)
Полезно для обнаружения всех типов пространств: http://en.wikipedia.org/wiki/Whitespace_character – Velcro
Может быть сокращено до 'if (myString.Any (Char.IsWhiteSpace))' и немного читаем. –
Это действительно должно быть принятым anwer, нет никакого рассказа о том, сколько странных символов пробелов есть, и это будет работать со всем .NET понимает – mfeineis
Если вам нужно только определить начало и конец белых Темп, я предлагаю использовать этот метод расширения, который был точно настроен с учетом производительности.
/// <summary>
/// Detects Whitespace at the beginning or end of a string.
/// Whitespace in the middle of the string is ignored.
/// </summary>
/// <param name="data"></param>
/// <returns></returns>
public static bool HasWhiteSpace(this string data)
{
return data[0] == 0x20 || data[data.Length - 1] == 0x20;
}
Lol, какого черта? Почему все downvotes? Клянусь, Stackoverflow - это, вероятно, самый дегенерированный, аутичный и токсичный веб-сайт в Интернете. – Krythic
«Точная настройка с учетом производительности» завершится неудачей с пустой строкой. – sisve
Также задан вопрос о проверке, имеет ли строка пробел _in_ it, а не если в нем есть пробел в начале или конце. – sisve
Does String.Contains ("") не подходит для вас? – Reddog
Это странно ... – Bastardo
Возможный дубликат [Обнаружение пробелов в текстовом поле] (http://stackoverflow.com/questions/8866455/detecting-whitespace-in-textbox) –