У меня есть коллекция струн. Я добавил «.» в конце каждого в форешнике цикл и объединил их в одну строку. a "."
Так что теперь у меня есть длинная строка, где я хочу удалить ненужную "." Waggrgae. Я хочу удалить "."
Где "." ничего. Буквы, как он работает на символах последовательно, и я также не знаю, как получить индекс для правильного ».« символ в моей исходной строке из цикла, если я все равно найду комбинацию.
Я также пытался создать BadString = ". " + char.tolower () Но у меня нет персонажа, который можно вставить в .tolower . Я знаю be.
Пример в соответствии с запросом:
public class AnalyzeImage
{
public async Task analyzeImage(string imageUri)
{
string endpoint = Environment.GetEnvironmentVariable("VISION_ENDPOINT");
string key = Environment.GetEnvironmentVariable("VISION_KEY");
ImageAnalysisClient client = new ImageAnalysisClient(new Uri(endpoint), new AzureKeyCredential(key));
ImageAnalysisResult result = client.Analyze(new Uri(imageUri), VisualFeatures.Read, new ImageAnalysisOptions { GenderNeutralCaption = true });
string cleanLine;
string parsedPara = string.Empty;
string miniString = string.Empty;
int i = 0;
foreach (DetectedTextBlock block in result.Read.Blocks)
{
foreach (DetectedTextLine line in block.Lines)
{
cleanLine = line.Text.Replace("'", "");
if (!cleanLine.EndsWith(".") || !cleanLine.EndsWith(",") || !cleanLine.EndsWith("!") || !cleanLine.EndsWith("?") || !cleanLine.EndsWith("-"))
{
cleanLine += ". "; //Add period character to the end of strings missing a closing character.
}
if (cleanLine.EndsWith(".."))
{
cleanLine.Remove(cleanLine.Length - 1);
}
parsedPara += cleanLine; //Concatenate strings into a single string.
foreach (char c in parsedPara) //This is where I start trying to check every combination of 3 characters to identify any misplaced period characters mid sentence.
{
miniString = miniString + c;
if (miniString.Length > 2)
{
miniString = string.Empty;
} else if (miniString.Length == 3)
{
char firstChar = miniString[0];
char secondChar = miniString[1];
char thirdChar = miniString[2];
if(firstChar.ToString() == "." && secondChar.ToString() == " " && char.IsLower(thirdChar))
{
Debug.WriteLine("HIT!");
}
}
i++;
}
}
}
Debug.WriteLine("parsedPara: " + parsedPara);
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/794 ... -character
Проверьте строку для двух последовательных букв, за которыми следуют символ нижнего чехла ⇐ C#
Место общения программистов C#
1739431916
Anonymous
У меня есть коллекция струн. Я добавил «.» в конце каждого в форешнике цикл и объединил их в одну строку. a "."
Так что теперь у меня есть длинная строка, где я хочу удалить ненужную "." Waggrgae. Я хочу удалить "."
Где "." ничего. Буквы, как он работает на символах последовательно, и я также не знаю, как получить индекс для правильного ».« символ в моей исходной строке из цикла, если я все равно найду комбинацию.
Я также пытался создать BadString = ". " + char.tolower () Но у меня нет персонажа, который можно вставить в .tolower . Я знаю be.
[b] Пример в соответствии с запросом: [/b]
public class AnalyzeImage
{
public async Task analyzeImage(string imageUri)
{
string endpoint = Environment.GetEnvironmentVariable("VISION_ENDPOINT");
string key = Environment.GetEnvironmentVariable("VISION_KEY");
ImageAnalysisClient client = new ImageAnalysisClient(new Uri(endpoint), new AzureKeyCredential(key));
ImageAnalysisResult result = client.Analyze(new Uri(imageUri), VisualFeatures.Read, new ImageAnalysisOptions { GenderNeutralCaption = true });
string cleanLine;
string parsedPara = string.Empty;
string miniString = string.Empty;
int i = 0;
foreach (DetectedTextBlock block in result.Read.Blocks)
{
foreach (DetectedTextLine line in block.Lines)
{
cleanLine = line.Text.Replace("'", "");
if (!cleanLine.EndsWith(".") || !cleanLine.EndsWith(",") || !cleanLine.EndsWith("!") || !cleanLine.EndsWith("?") || !cleanLine.EndsWith("-"))
{
cleanLine += ". "; //Add period character to the end of strings missing a closing character.
}
if (cleanLine.EndsWith(".."))
{
cleanLine.Remove(cleanLine.Length - 1);
}
parsedPara += cleanLine; //Concatenate strings into a single string.
foreach (char c in parsedPara) //This is where I start trying to check every combination of 3 characters to identify any misplaced period characters mid sentence.
{
miniString = miniString + c;
if (miniString.Length > 2)
{
miniString = string.Empty;
} else if (miniString.Length == 3)
{
char firstChar = miniString[0];
char secondChar = miniString[1];
char thirdChar = miniString[2];
if(firstChar.ToString() == "." && secondChar.ToString() == " " && char.IsLower(thirdChar))
{
Debug.WriteLine("HIT!");
}
}
i++;
}
}
}
Debug.WriteLine("parsedPara: " + parsedPara);
}
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79434411/check-string-for-two-consecutive-letters-followed-by-a-lower-case-character[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия