如何解决需要C#正则表达式
| 我有一堆文字,在该文字中,我想替换每个不包含a-z
或A-Z
字符的\“ EXAMPLE \”字..所以类似\“[^a-z]EXAMPLE
\” ..
但是,在删除时,我只想删除\“ EXAMPLE \”,而不是其前面的杂字符或其后的任何字符...
因此,在\“ BLABLAEXAMPLBLA ExampleBLA \”中,我要输出\“ BLABLAEXAMPLBLA BLA \”
我希望这很清楚:)
感谢您的时间!
解决方法
您可以使用负向后看实现此目的:
string cleanString = Regex.Replace(originalString,\"(?<![a-zA-Z])EXAMPLE\",\"\");
,您还可以使用匹配评估程序。我认为也更具弹性但也更复杂...
var regex = new Regex(\"[^a-z](?<a>EXAMPLE)\");
var text = \"BLABLAEXAMPLBLA EXAMPLEBLA\";
MatchEvaluator evaluator = RemoveExample;
text = regex.Replace(text,evaluator);
...
private static string RemoveExample(Match m)
{
return m.Value.Replace(m.Groups[\"a\"].Value,\"\");
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。