У меня есть строка, как указано:
< img src='^f('hImagepath')[1].label()^MegaMillions_NoBkgd.png'/>
Мне нужно регулярное выражение, которое вернет мне «MegaMillions_NoBkgd.png», эта часть приведенной выше строки, результат после использования регулярного выражения должен быть «MegaMillions_NoBkgd.png», сохраненный в строковой переменной.
Заранее спасибо
3 ответа
Тогда я считаю, что это должно дать вам то, что вам нужно, более или менее:
var x = "< img src='^f('hImagepath')[1].label()^MegaMillions_NoBkgd.png'/>";
// Result will be:
// ^f('hImagepath')[1].label()^MegaMillions_NoBkgd.png'
var result = Regex.Match(x, @"\^f\((.)*'").Value;
Конечно, более простым и читаемым решением было бы сделать что-то вроде этого и полностью отказаться от использования регулярного выражения:
var x = "<img src='^f('hImagepath')[1].label()^MegaMillions_NoBkgd.png'/>";
var urlStart = x.IndexOf("'") + 1;
var urlStop = x.LastIndexOf("'");
var result = x.Substring(urlStart, (urlStop - urlStart));
string matchString = Regex.Match(original_text, @"(<img([^>]+)>)").Value;
Это даст вам ожидаемый результат:
string s = "< img src='^f('hImagepath')[1].label()^MegaMillions_NoBkgd.png'/>";
int start = s.LastIndexOf('^');
int stop = s.LastIndexOf('\'');
string result = s.Substring(start+1, stop-start-1);
Похожие вопросы
Новые вопросы
c#
C# (произносится как «see Sharp») — это высокоуровневый мультипарадигменный язык программирования со статической типизацией, разработанный Microsoft. Код C# обычно нацелен на семейство инструментов и сред выполнения Microsoft .NET, которое включает в себя .NET, .NET Framework, .NET MAUI и Xamarin среди прочих. Используйте этот тег для ответов на вопросы о коде, написанном на C#, или о формальной спецификации C#.
< img src='^f('hImagepath')[1].label()^
не является константой? Итак, какие правила применяются?