正则表达式,删除除()-之外的所有标点符号
本文关键字:标点符号 删除 正则表达式 | 更新日期: 2024-07-23 00:52:44
我一直在尝试使用正则表达式来删除除()-和之外的所有标点符号实例。从一根绳子上,但发现很难让我的头脑清醒过来。
这是我想出的一个,但它确实做了我需要它做的一切。
有人有什么建议或帮助吗??任何人都将不胜感激
Regex.Replace(address, @"(?<=[^A-Za-z0-9])(?!/s'*)", "");
试试这个:
Regex.Replace(address, @"['p{P}-[()'-.]]", "");
小的解释:''p{p}或''p{标点符号}匹配任何类型的标点符号(请参见unicode类别)
以下正则表达式可以满足您的需求:
Regex.Replace(address, @"[^'w's'-'.'(')]")
祝你好运。
像这样使用char.IsPunctuation
方法怎么样:
var newString = new string(yourString.Where(x => !char.IsPunctuation(x) || x == '(' || x == ')' || x == '.'))