>  기사  >  백엔드 개발  >  C#+JS에서 구현된 정규 교체 함수의 두 가지 예 분석

C#+JS에서 구현된 정규 교체 함수의 두 가지 예 분석

黄舟
黄舟원래의
2017-06-04 09:39:011387검색

이 글에서는 JSC#에서 구현하는 두 가지 정기 교체 기능을 주로 소개하고, js와 C#에서 strings의 정기적 교체에 대한 관련 구현 방법과 notes를 구체적인 예와 함께 분석합니다. 참고하세요

이 글에서는 JS와 C#으로 구현된 두 가지 정규 교체 함수에 대해 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.

응용 사례 1:

처리할 문자열: str="display=테스트 이름=mu 디스플레이=temp"

요구 사항: put the 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 규칙성에 대한 간단한 요약이 있습니다.

stringmatch과 일반objectexec

의 차이점 1. 정규식에 /g가 없으면 둘 다 첫 번째로 일치하는 문자열 또는 문자열 그룹을 반환합니다(정규식에 그룹화가 있는 경우)

2. 정규식에 /g가 있는 경우 match는 일치하는 모든 문자열 그룹을 반환하고 그룹화를 무시하며 exec는 첫 번째 문자열 또는 문자열 그룹을 반환합니다

위 내용은 C#+JS에서 구현된 정규 교체 함수의 두 가지 예 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.