问一个正则表达式的问题。关于匹配5个“|”……

shaowenjie 2011-12-30 05:39:05
一个字符串,里面有5个“|”,竖杠的左右都有不定长的字符串(包含空字符串的可能)。

例如aaa|bbb|dd||123|12d$

求靠谱的正则表达式。
...全文
85 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
dalmeeme 2011-12-30
  • 打赏
  • 举报
回复
完全匹配:^(?:[^|]*\|[^|]*){5}$
q107770540 2011-12-30
  • 打赏
  • 举报
回复
([^|]*\|?){5}
  • 打赏
  • 举报
回复
  string pattern = @"(?i)((.*)?\|(.*)?){5}";
string result = Regex.Match(tempStr, pattern).Value;
List<string> temp_list = new List<string>() {
"aaa|bbb|dd||123|12d$",
"|a|b|||",
"|||||",
"1|2|3|4|",
""

};
foreach (string item in temp_list)
{
if (Regex.IsMatch(item, pattern))
{
//符合
}
/*
* true
* true
* true
* false
* false
*/
}

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧