簡體   English   中英

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

[英]Insert character before specific character c#

假設下面的字符串在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");

第二行的夏季 :匹配任何數字或變量,后跟任何數字或變量。

輸出示例:

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)

在這個用戶的情況下你只想改變

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

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

只需添加另一個變量。

int x = //Whatever x is going to be;
int j = 0;
int y = j^7+3x^4-j+5

現在,如果你有更多的用戶案例而不僅僅是這個用戶案例,你可以非常快速地添加大量變量,在這種情況下你不想使用這個選項。 但如果你將它用於一個孤立的案例,這可能是一個可行的答案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM