正则表达式模式单个和多个相同字符的实例
Posted
技术标签:
【中文标题】正则表达式模式单个和多个相同字符的实例【英文标题】:Regex pattern single and multiple instance of same character 【发布时间】:2016-03-09 09:50:23 【问题描述】:我正在使用正则表达式来清理字符串,我希望删除特殊字符,允许单词和数字,并允许单词之间有空格。
下面的代码运行良好,但我也想接受 - 字符的单个实例,但按顺序停止 n 次,例如---- 取以下字符串和expexted结果:
之前:'灰色1.25-2.50mm\----''
后:灰色1.25-2.50mm
string clean = Regex.Replace(test, @"[^0-9a-zA-Z./ \w]+", "").Trim();
我删除了 - 从我的示例中删除,因为它会接受所有实例。
【问题讨论】:
如果在字符类中添加\w
,0-9a-zA-Z
是多余的。
试试[^./ \w-]+|\B-\B
。
感谢 Soner,这按预期工作。
抱歉,我应该感谢stribizhev。
【参考方案1】:
您可以使用正则表达式:
string clean = Regex.Replace(@"grey 1.25-2.50mm \ ----", @"([^\w./\s-]+|-2,)", "")
【讨论】:
以上是关于正则表达式模式单个和多个相同字符的实例的主要内容,如果未能解决你的问题,请参考以下文章