如何使用正则表达式从字符串(如果有)中删除最后一个逗号和空格?我在C#应用程序中有一个字符串,想知道使用正则表达式检查最后两个字符(逗号和空格)并删除它们(如果是的话)的正确方法是什么。(抱歉,我来晚了。)是的,这不是您必须或不应该使用正则表达式的东西;但是由于您询问了如何使用正则表达式(例如,也许您只是好奇,并且“假设我必须使用正则表达式模式”假设是学习的好方法),请考虑以下模式:(.*?)(,)?$您可以在关联的正则表达式中对其进行测试。要点:此外,以下C#示例使用此模式...varstr1="whatever,";varstr2="随便,";varstr3="";varregex=newRegex("(.*?)(,)?$");varstr1Match=regex.Match(str1);varstr2Match=regex.Match(str2);varstr3Match=regex.Match(str3);Console.WriteLine(str1Match.Groups[1].Value);Console.WriteLine(str2Match.Groups[1].Value);Console.WriteLine(str3Match.Groups[1].Value);...产生以下输出:它使用Groups[1].Value来获取第一个捕获组的值(即匹配值(.*?)而不是(,)?(如果有的话))。编辑:我实际上喜欢@UlugbekUmirov在他的评论中提出的建议(stringoutput=Regex.Replace("mystring,",",$","");)甚至更好,因为它非常简单;但我希望您发现我概述的方法很有启发性。没有正则表达式的工作解决方案:stringstr="dfsf,";如果(str.EndsWith(","))str=str.Remove(str.Length-2);我们删除2因为2是","长度。演示你不需要正则表达式,使用String.TrimEnd像:stringupdatedString=yourString.TrimEnd(',','');您还可以指定一个字符串并调用ToCharArray,例如:stringstr="something,,,,,,";字符串updatedString=str.TrimEnd(",".ToCharArray());会给你“东西”如果你只想删除一个“,”(末尾的逗号和空格),请使用:if(str.EndsWith(","))updatedString=str.Substring(0,str.Length-2);不是删除尾随的逗号和空格,而是首先简单地生成没有额外逗号的字符串。生成逗号分隔值时,只需使用String.Join将所有字符串与特定分隔符连接在一起:varline=string.Join(",",yourCollectionOfValues);它比将值附加在一起更容易和更快,Join已经处理,确保没有尾随分隔符。以上就是C#学习教程:如何使用正则表达式去掉字符串最后一个逗号和空格(如果有的话)?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
