正则表达式的问题

时间:2011-04-05 09:58:33

标签: c# .net regex

我需要regexp表达式:“dsfsdf|dfdfdf|Gfgfgfg|ghghfgh|fgfjghjg” 在“|”之间可以是任何符号序列。

我试过这个表达式:[a-z]+\|[a-z]+但它包含类似的代码([a-z] +)。我希望表达式没有复制粘贴,因为实际上我的表达式更复杂。

提前致谢...

3 个答案:

答案 0 :(得分:2)

我认为你需要下一个表达式:

^[^|].*[^|]$

如果字符串未以|符号开头或结尾,则匹配该字符串。

答案 1 :(得分:0)

尝试

(?:[A-Za-z]+\|?)+

(?:)是非捕获组,而\|?正在寻找一个或0 |

您可以在[]之间添加您要查找的任何字符。对于单词字符,还有预定义的字符集,如\w(我不确定c#.net中的单词字符至少是A-Za-z和_)

答案 2 :(得分:0)

为什么不使用string.Split('|')

如果您想验证字符串是否有效,请使用[a-z|]+