首頁  >  文章  >  後端開發  >  C#+JS實作的兩個正規替換功能範例分析

C#+JS實作的兩個正規替換功能範例分析

黄舟
黄舟原創
2017-06-04 09:39:011401瀏覽

這篇文章主要介紹了JSC#實現的兩個正規替換功能,結合具體實例形式分析了js與C#進行字串正規替換的相關實作方法與注意事項,需要的朋友可以參考下

本文實例講述了JS和C#實現的兩個正規替換功能。分享給大家供大家參考,具體如下:

應用實例1:

#待處理字串:str="display=test name =mu display=temp"

要求:把display=後的值都改成localhost

JS處理方法:

str.replace(/display=\w*/g,"display=localhost");

C#處理方法:

Regex reg=new Regex(@"display=\w*");
str=reg.Replace(str,"display=localhost");

應用實例2:

待處理字串:str="display=test name=mu display=temp"

要求:字串變成display= localhosttest name=mu display=localhosttemp

JS處理方法:

var reg = /(display=)(\w*)/g;
var result;
while ((result= reg.exec(str))!=null) {
  str= str.replace(result[0], result[1] + "localhost" + result[2]);
}

C#處理方法:

/// <summary>
/// 定义处理方法
/// </summary>
/// <param name="match">符合的字符串</param>
/// <returns></returns>
private string Evaluator(Match match)
{
  //(display=)(\w*) Groups按查找到的字符串再根据分组进行分组
  //第0组为整个符合的字符串,后面的组按括号顺序排
  string str =match.Groups[1].Value+"localhost"+ match.Groups[2].Value;
  return str;
}
Regex regex = new Regex(@"(display=)(\w*)");
string result = regex.Replace(str, Evaluator);

最後還有一個關於js的正規的小總結:

字串match和正規物件##exec的區別

1、 當

正規表示式沒有/g時,兩者會傳回第一個符合的字串或字串群組(如果正規有分組的話)

#2、 當正規表示式有/g時,match傳回全部符合的字串組且忽略分組,exec則傳回第一個字串或字串組

以上是C#+JS實作的兩個正規替換功能範例分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn