C# 在C中拆分字符串值#

C# 在C中拆分字符串值#,c#,.net,split,C#,.net,Split,我有一个字符串值,我需要从中提取中间位,例如“取消付款人”/“新无纸化” 以下是字符串格式的示例: “REF_SPHCPHJ0000057_取消付款人_20100105174151.pdf” “REF_sphcphj000056_New paper less_20100105174151.pdf”这是正则表达式的位置: Regex re = new Regex(@".*_(?<middle>\w+ \w+)_.*?"); string name = "REF_SPHCPHJ00000

我有一个字符串值,我需要从中提取中间位,例如“取消付款人”/“新无纸化”

以下是字符串格式的示例:

“REF_SPHCPHJ0000057_取消付款人_20100105174151.pdf”

“REF_sphcphj000056_New paper less_20100105174151.pdf”

这是正则表达式的位置:

Regex re = new Regex(@".*_(?<middle>\w+ \w+)_.*?");
string name = "REF_SPHCPHJ0000057_Cancel Payer_20100105174151.pdf";
string middle = re.Match(name).Groups["middle"].Value;
Regex-re=new Regex(@.*.\u(?\ w+\w+)\u*?);
string name=“REF_SPHCPHJ0000057_取消付款人_20100105174151.pdf”;
字符串middle=re.Match(name).Groups[“middle”].Value;
使用:

输出是

Cancel Payer

我认为正则表达式

Regex re = new Regex(@"\w+_\w+_(?<searched>.*)_\d*.pdf");
Regex re=new Regex(@“\w+\uw+\u(?.*)\ ud*.pdf”);
将满足您的需要,前提是PDF文件始终以以下形式提供给您:

REF_<text>_<your text here>_<some date + id maybe>.pdf
REF.pdf

在我看来,这是拆分操作的第三个元素([2])?调用
.Split(“”“)[2]
,您遇到了什么问题?简单地拆分字符串似乎有点过分。如果“中间位”中有下划线,Jason的解决方案将无法正常工作。它将只返回下划线之前的部分。
REF_<text>_<your text here>_<some date + id maybe>.pdf