Это возможный использовать регулярное выражение для обнаружения чего-либо, что НЕ является "пустой строкой" как это:
string s1 = "";
string s2 = " ";
string s3 = " ";
string s4 = " ";
и т.д.
Я знаю, что мог использовать обрезку и т.д., но я хотел бы использовать регулярное выражение.
Мы можем также использовать пространство в символьном классе в выражении, подобном одному из них:
(?!^[ ]*$)^\S+$
(?!^[ ]*$)^\S{1,}$
(?!^[ ]{0,}$)^\S{1,}$
(?!^[ ]{0,1}$)^\S{1,}$
в зависимости от языка/разновидности, который мы могли бы использовать.
using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"(?!^[ ]*$)^\S+$";
string input = @"
abcd
ABCD1234
#$%^&*()_+={}
abc def
ABC 123
";
RegexOptions options = RegexOptions.Multiline;
foreach (Match m in Regex.Matches(input, pattern, options))
{
Console.WriteLine("'{0}' found at index {1}.", m.Value, m.Index);
}
}
}
, Если Вы хотите упростить/изменить/исследовать выражение, оно было объяснено на верхней правой панели regex101.com . Если бы Вы хотели бы, можно также смотреть в эта ссылка , как она соответствовала бы против некоторых демонстрационных исходных данных.
<час>jex.im визуализирует регулярные выражения: