c# - 在特定字符 c# 之前插入字符

标签 c# regex string

假设下面的字符串是在C#中,如何替换

y=x^7+3x^4-x+5

y=0^7+3*0^4-0+5

因为不能用 0 替换 x 的所有实例,因为那样你会得到 30^4

最佳答案

var a = "y=x^7+3x^4-x+5";
var b = Regex.Replace(a, @"(\d+|[a-zA-Z])(?=\d+|[a-zA-Z])", @"$1*");
var c = Regex.Replace(b, @"x", @"0");

第 2 行的摘要:匹配任何数字或变量后跟任何数字或变量。

输出示例:

In: y=33xggyz/3/4*x/x+xx1         |  In: y=x^7+3x^4-x+5        
Out:y=33*x*g*g*y*z/3/4*x/x+x*x*1  |  Out:y=0^7+3*0^4-0+5              
                                  |
In: y=2+33xggyz/3/4*x/x+xx        |  In: y=x1
Out:y=2+33*0*g*g*y*z/3/4*0/0+0*0  |  Out:y=0*1
                                  |
In: y=10xy^2+xx+(12x+1yy)         |  In: y(xx)=1
Out:y=10*0*y^2+0*0+(12*0+1*y*y)   |  Out:y(0*0)=1

已更新:(7/4/2015)修复错误,y=x1 失败(返回 y=01)

关于c# - 在特定字符 c# 之前插入字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31215018/

相关文章:

c# - 如何从 C# 中的 TimePicker(WPF) 获取值?

c# - 播种 asp.net 核心身份角色

r - 转换列表输出以在 dplyr 管道中创建 data.frame

java - 如何解析表示算术运算序列的字符串?

javascript - 为什么有两种 JavaScript 字符串?

javascript - 如何将 Javascript 中的返回值传递给 Controller

c# - 在 Main 方法中等待 - 谁获得控制权,直到任务完成?

regex - PowerShell 正则表达式分组

javascript - 使用 JavaScript 将字符串与正则表达式匹配

c# - 将\u2265 插入 C# 字符串