c# - RegEx替换C#中字符串中的特定字母

标签 c# regex pattern-matching

我需要一个 RegEx 来将字符串中所有出现的“l”替换为“ł”。 只有在以下情况下才应进行更换:

1) l前有z,

2)在l

之后应该有一个数字或者.

例如:

1) 如果字符串是abc zl12,200,输出应该是abc zł12,200

2) 如果字符串是zl.00,输出应该是zł.00

3) 如果字符串是adbc zlopr,输出应该是adbc zlopr

谢谢!

最佳答案

你可以这样表达。

Live Demo

string output = Regex.Replace(str, @"(z)l(\d+|\.)", "$1ł$2");
  • (z) 将查找 z 并由 $1 标识
  • l 是您要替换为 ł 的字符
  • (\d+|.) 为数字或点.,由$2标识

() 用于制作段,我们使用 $1$2 来获取段并生成输出字符串以及替换字符.

关于c# - RegEx替换C#中字符串中的特定字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35170117/

相关文章:

c# - 单点触控中的 UIScrollView Hittest 功能

c# - 如何缩小我的单点触摸应用程序的大小

java - 段落条件嵌套正则表达式(递归)

regex - 用R中的数据帧中的正则表达式检测单词边界

c# - 如何处理相等比较中的空值?

c# - 在 C# Dictionary<string,bool> 中设置所有值的最佳方式是什么?

mysql - 如何在 mysql 列中搜索文本并包含标点符号

rust - 哪种获取结构字段引用的方法是首选方法?

swift - 我可以使用模式匹配运算符 ~= 将枚举值与具有关联变量的枚举类型匹配吗?

Linux 一元运算符检查具有模式名称的文件是否存在