我正在使用C#并且有一个文档名称为
的字符串string docName = "email notification 4926-0538-5751 v.11.docx"
以下是最初形成的方式:
"Doc_Name Doc_Number v.version_Number.doc_extension"
试图找到如何从这个字符串中获取子字符串,如下所示:
string formateddocNumber = "4826-0718-5751 v.11"
我觉得我必须使用某种正则表达式。但不确定。
如果这有帮助,doc_number始终采用以下格式:
1234-1234-1234
并且始终拥有此格式的版本:
v.some_number
我无法使用docx来匹配正则表达式,因为扩展名可能是doc或txt等。
答案 0 :(得分:1)
正则表达式非常简单:
string docName = "email notification 4926-0538-5751 v.11.docx";
var regex = new Regex(@"^.+ (\d{4}-\d{4}-\d{4} .+?)\.[^.]+$");
var match = regex.Match(docName);
if (match.Success)
{
Console.WriteLine(match.Groups[1].Value);
}