在 C# 中获取等效的正则表达式以切断前导和尾随子字符串

Posted

技术标签:

【中文标题】在 C# 中获取等效的正则表达式以切断前导和尾随子字符串【英文标题】:Get Equivalent regex in C# for chopping off leading and trailing substring 【发布时间】:2015-10-04 06:26:42 【问题描述】:

javascript

 "[***Smart tag ***]".replace(/^(\[\*\*\*)|(\*\*\*\])$/g, '');
 //  Getting expected output "Smart tag"

在 C#.Net 中

 var InputString = "[***Smart tag ***]";  
string Pattern = @"/^(\[\*\*\*)|(\*\*\*\])$/";  
Regex RegexSmarTag = new Regex(Pattern); //Not Working 
var Output = RegexSmarTag.Replace(InputString,""); 
 //Expected out Put : Smart tag //Current outPut : "[***Smart tag ***]";

帮我从输入字符串的字符中剪掉字符以获得所需的输出。

【问题讨论】:

【参考方案1】:
string Pattern = @"^(\[\*\*\*)|(\*\*\*\])$";  

这里不需要// 分隔符。您还可以将您的正则表达式重写为:

string Pattern = @"^(\[\*3)|(\*3\])$"; 

【讨论】:

【参考方案2】:

尝试不使用破折号/ 像这样

string Pattern = @"^(\[\*\*\*)|(\*\*\*\])$";

【讨论】:

以上是关于在 C# 中获取等效的正则表达式以切断前导和尾随子字符串的主要内容,如果未能解决你的问题,请参考以下文章

正则表达式前导和尾随空格

删除json字符串c#中的尾随空格

需要正则表达式匹配最多8位的int,包括,前导或尾随0但不是单个数字“0”[关闭]

前导和尾随空格剪切 + 中间空格替换

此正则表达式模式的 C# 等效项

使用 C# 从 IP 地址中删除前导零