Я использовал regex в прошлом для проверки ввода, но мне интересно, могут ли они позволить вам разобрать сложную строку.Может ли регулярное выражение анализировать строки? Если да, то как?
У меня есть заголовок, как это:
-----------------------------7dac1d2214d4\r\nContent-Disposition: form-data; name=\"my_title\"\r\n\r\nMyData\r\n-----------------------------7dac1d2214d4\r\nContent-Disposition: form-data; name=\"myupload\"; filename=\"C:\\myfile.zip\"\r\nContent-Type: application/x-zip-compressed\r\n\r\n
Я хочу, чтобы иметь возможность разобрать скажем, имя файла.
На данный момент я делаю это (после разбора заголовков):
this.FileName = headers[1].Substring(headers[1].IndexOf("filename=\"") + "filename=\"".Length, headers[1].IndexOf("\"\r\n", headers[1].IndexOf("filename=\"")) - (headers[1].IndexOf("filename=\"") + "filename=\"".Length));
Но это отвратительное и уродливое.
Может ли регулярное выражение решить эту проблему более изящно? Я понимаю, основы синтаксиса, так что если он может решить, кто-то может показать мне, как разобрать это с регулярным выражением:
"+Name=Bob+Age=39+"
Я, вероятно, может работать все остальное сам потом.
Спасибо.
Разбор во что? Какой синтаксический анализ вам нужен? – Oded
Я хочу, чтобы иметь возможность анализировать различные свойства, такие как filename – NibblyPig
Я действительно думаю, что вы должны были принять ответ Дэниела, считая, что он был первым. – Josh