この記事では、JS と C# で実装された 2 つの正規置換関数を主に紹介し、具体的な例に基づいて、JS と C# での文字列の正規置換に関連する実装方法と注意事項を分析します。 JS と C# によって実装される 2 つの通常の置換関数について説明します。参考のために皆さんと共有してください。詳細は次のとおりです:
アプリケーション例 1:処理される文字列: str="display=test name=mu display=temp"
要件: すべての値を変更しますafter display= localhost へ
JS 処理メソッド:
str.replace(/display=\w*/g,"display=localhost");
Regex reg=new Regex(@"display=\w*"); str=reg.Replace(str,"display=localhost");
保留中の文字列: str="display=test name=mu display= temp"
要件: 文字列は display=
localhosttest name=mu display=localhosttempJS 処理メソッド:
var reg = /(display=)(\w*)/g; var result; while ((result= reg.exec(str))!=null) { str= str.replace(result[0], result[1] + "localhost" + result[2]); }
/// <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);
string
match
和正则对象exec
1 の違い。正規表現に /g がない場合、どちらも最初に一致した文字列または文字列グループを返します (正規表現にグループ化がある場合)。 ) )
2. 正規表現に /g がある場合、match は一致するすべての文字列グループを返し、グループ化を無視し、exec は最初の文字列または文字列グループを返します
以上がJS と C# で実装された通常の置換関数の 2 つの例を共有しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。