我有一个字符串值,我需要将中间位输出,例如“取消付款人”/“新无纸化”。
以下是字符串格式的示例:
“REF_SPHCPHJ0000057_Cancel Payer_20100105174151.pdf”
“REF_SPHCPHJ0000056_New Paperless_20100105174151.pdf”
答案 0 :(得分:16)
string s = "REF_SPHCPHJ0000057_Cancel Payer_20100105174151.pdf";
string middleBit = s.Split('_')[2];
Console.WriteLine(middleBit);
输出
Cancel Payer
答案 1 :(得分:5)
这不是正则表达式的地方吗?
Regex re = new Regex(@".*_(?<middle>\w+ \w+)_.*?");
string name = "REF_SPHCPHJ0000057_Cancel Payer_20100105174151.pdf";
string middle = re.Match(name).Groups["middle"].Value;
答案 2 :(得分:0)
我认为这个正则表达式:
Regex re = new Regex(@"\w+_\w+_(?<searched>.*)_\d*.pdf");
如果pdf文件总是以的形式出现,那么将满足您的需求
REF_<text>_<your text here>_<some date + id maybe>.pdf