gpt4 book ai didi

c# - 如何用正则表达式中的特定符号替换特殊字符和空格?

转载 作者:行者123 更新时间:2023-11-30 22:07:28 30 4
gpt4 key购买 nike

我正在开发 Windows Phone 8 应用程序。

我需要将特殊字符、空格和多个空格替换成- [dash symbol]

示例

没有替换字符串 - Hampton Inn & Suites Tampa East(赌场区)

我需要这样的 - Hampton-Inn-Suites-Tampa-East-Casino-Area

我试过这样的正则表达式

C#

 string passvalue = Regex.Replace(name, @"[ '&().,/]", "-");

以上代码输出

Hampton-Inn---Suites-Tampa-East--Casino-Area-

但我需要 Hampton-Inn-Suites-Tampa-East-Casino-Area

我需要删除
1.(Inn---Suites) 进入(Inn-Suites)

2.(--Casino-Area) 进入(-Casino-Area)

3.我不需要-终于(Area-)变成(Area)

谢谢

最佳答案

首先在您的字符类 [] 之后添加一个 + 量词以删除多次出现。之后对连字符执行 Trim 以删除前导或尾随。

string passvalue = Regex.Replace(name, @"[ '&().,/]+", "-").Trim('-');
^ added

但是,我建议您使用正则表达式 [^a-zA-Z]+ 来处理您的情况:

string passvalue = Regex.Replace(name, @"[^a-zA-Z]+", "-").Trim('-');

关于c# - 如何用正则表达式中的特定符号替换特殊字符和空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22989673/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com