Я застреваю в попытке напечатать слова, содержащие только строчные буквы a-z. Я уже раздел в введенную строку, если она содержит любое число 0-9, и если он содержит заглавную букву:C# проверить, содержит ли вход только строчные буквы a-z
String[] textParts;
textParts = text.Split(delimChars);
for (int i = 0; i < textParts.Length; i++) //adds s to words list and checks for capitals
{
String s = textParts[i];
bool valid = true;
foreach (char c in textParts[i])
{
if (char.IsUpper(c))
{
valid = false;
break;
}
if (c >= '0' && c <= '9')
{
valid = false;
break;
}
if (char.IsPunctuation(c))
{
valid = false;
break;
}
}
if (valid) pageIn.words.Add(s);
Это мой код до сих пор. Последняя часть, которую я пытаюсь проверить, чтобы увидеть, содержит ли слово какие-либо знаки препинания (это не работает), есть ли более простой способ сделать это и как я могу заставить последнюю часть моего кода работать?
P.S. Мне не очень удобно использовать Regex.
Большого спасибо, Ellie
http://stackoverflow.com/questions/3434120/regex-for-single-lower-case-word#3434125, даже если вам не удобно, для текущего случая я считаю, что регулярное выражение - именно то, что вы хотели бы. – Crypth
У меня было ужасное чувство, что это будет! Если я использую Regex, значит ли это, что я делаю одну проверку (это строчная буква?) И все? Все остальное будет проигнорировано? (спасибо) – Ellie