백엔드 개발 C#.Net 튜토리얼 C# 문자열 처리 가젯에 대한 자세한 소개

C# 문자열 처리 가젯에 대한 자세한 소개

Mar 17, 2017 am 11:43 AM

이 글에서는 주로 C#문자열 처리 가젯을 소개합니다. 정규식 일치, base64 암호화, ROT13 암호화 및 암호 해독, MD5 매우 좋은 참조 값을 가지고 있습니다. 아래 에디터와 함께 살펴보겠습니다

저는 대학시절 보안에 푹 빠져 있었습니다. 그 당시 저는 항상 문자열 처리를 위한 작은 프로그램을 작성하고 싶었습니다.

아쉽게도 당시 시간이 많지 않아서 이번 겨울방학까지 계속 미루었어요.

겨울방학 동안 할 일이 없어서 실력을 연습하고 양식과 기초를 복습하는 작은 프로그램을 작성했습니다.

은 다음 기능을 구현합니다.

대문자로 변환

소문자로 변환

문자열 반전

문자열 일치 횟수

정기 매칭

base64 암호화

base64 복호화

ROT13 암호화 및 복호화

MD5 32비트 암호화

프로그램은 여전히 ​​매우 간단하며 견고성도 없고 입력 검증도 없습니다.

버그는 주의해서 만드세요(조심하세요

그리고 제 변수 이름과 메소드 이름에 대해 불평하지 마세요. 초등학교 때부터 병음을 배우지 않았다면, 당신은 절대 이해하지 못할 것입니다: )

블라인드 테스트 프로젝트로 이 일을 시작했기 때문입니다.

번역하기 너무 귀찮아서

대소문자 변환하는 방법이 내장되어 있습니다

Console.WriteLine(s.ToUpper());//转换成大写
Console.WriteLine(s.ToLower());//转换成小写
로그인 후 복사

역방향 문자 출력 문자열

public static void fanxiang(string s)
  {
   char[] arrey = s.ToCharArray();
   StringBuilder s1 = new StringBuilder("");
   for (int i = arrey.Length - 1; i >= 0; i--)
   {
    s1.Append(Convert.ToString(arrey[i]));
   }
   Console.WriteLine("反向字符串为{0}",s1);
  }
로그인 후 복사

특정 짧은 문자열의 개수 보기

public static void pipei(string s)
  {
   int count = 0;
   int i;
   Console.WriteLine("请输入短字符串");
   string s2 = Console.ReadLine();
   while ((i=s.IndexOf(s2)) >= 0)
   {
    count++;
    s = s.Substring(i + s2.Length);
   }
   Console.WriteLine("字符串中出现了{0}次{1}", count, s2);
  }
로그인 후 복사

정규 매칭

배우지 않음 정규수업에 대해 많이 배웠고, 온라인에서 읽은 내용도 대부분 정규수업보다는 정규수업에 대한 이야기입니다. 하루 정도 이 글을 쓰느라 꼼짝 못했는데, 아직도 버그가 있습니다.

일치하는 결과가 없거나, 일치하는 내용이 비어 있을 때? 여러 줄 바꿈이 발생합니다. 그 당시 버그를 어떻게 테스트했는지도 잊어버렸습니다.

아이디어가 있는 정원사라면 누구나 아이디어를 공유할 수 있습니다.

public static void zzpipei(string s)
  {
   Console.WriteLine("请输入正则表达式");
   string zz = Console.ReadLine();
   Regex re = new Regex(zz);
   string s2 = "";
   if (re.IsMatch(s))
   {
    Console.WriteLine("匹配成功");
    MatchCollection mc = re.Matches(s);
    foreach (Match ma in mc)
    {
     s2 += ma.Value;
     s2 += ("\r\n");
    }
    Console.WriteLine("一行为一个匹配结果");
    Console.WriteLine(s2);
   }
   else
   { Console.WriteLine("无匹配结果"); }
  }
로그인 후 복사

base64 암호화

사용된 방법도 내장되어 있습니다. 한자 암호화는 일부 웹사이트의 암호화와 다릅니다.

 public static void basejiami(string s)
  {
   byte[] bytes = Encoding.Default.GetBytes(s);
    Console.WriteLine("字符串base64加密为{0}", Convert.ToBase64String(bytes));
  }
로그인 후 복사

base64 복호화

 public static void basejiemi(string s)
  {
   byte[] bytes = Convert.FromBase64String(s);
    Console.WriteLine("字符串base64解密为{0}", Encoding.Default.GetString(bytes));
  }
로그인 후 복사

ROT13 암호화 및 복호화

ROT13은 간단한 대체 암호입니다. ROT13은 과거 고대 로마에서 개발된 카이사르 암호의 변형이기도 합니다.

ROT13은 13비트를 뒤로 대체합니다. 즉, A는 N으로, B는 O로 변환됩니다.

시저 암호는 3자리 숫자를 거꾸로 바꾸는 것입니다. 이 방법은 Caesar 암호를 해독하기 위해 수정될 수 있으며 대소문자를 구분합니다.

ROT13은 그 자체의 역입니다. 즉, ROT13을 복원하려면 동일한 암호화 알고리즘을 적용하기만 하면 암호화 및 복호화에 동일한 작업을 사용할 수 있습니다.

이 알고리즘은 실제 암호화 보안을 제공하지 않으므로 보안이 필요한 목적으로 사용해서는 안됩니다. 이는 약한 암호화의 예로 자주 인용됩니다.

public static void rotjm(string s)
  {
   string jmzf = "";//解密加密后的字符串
   char[] arrey = s.ToCharArray();
   Console.WriteLine("字符串长度为{0}", arrey.Length);
   for (int i = 0; i < arrey.Length; i++)
   {
    int zfcode = (int)arrey[i];
    if (zfcode >= 97 && zfcode <= 109)
     zfcode = zfcode + 13;
    else if (zfcode >= 110 && zfcode <= 122)
     zfcode = zfcode - 13;
    else if (zfcode >= 65 && zfcode <= 77)
     zfcode = zfcode + 13;
    else if (zfcode >= 78 && zfcode <= 90)
     zfcode = zfcode - 13;
    jmzf = jmzf + (char)zfcode;
   }
   Console.WriteLine("结果为{0}", jmzf);
  }
로그인 후 복사

문자열 바꾸기

public static void thzf(string s)
  {
   Console.WriteLine("请输入想要被替换的字符串");
   string str1 = Console.ReadLine();
   Console.WriteLine("请输入想要替换成的字符串");
   string str2 = Console.ReadLine();
   Console.WriteLine(s.Replace(str1, str2));
  }
로그인 후 복사

32비트 MD5 암호화

public static void md5jm(string s)
  {
   MD5 md5 = new MD5CryptoServiceProvider();
   //将字符编码为字节序列
   byte[] data = System.Text.Encoding.Default.GetBytes(s);
   byte[] md5data = md5.ComputeHash(data);
   md5.Clear();
   //遍历加密数组,加密字节,该方法为32位加密
   string str = "";
   for (int i = 0; i < md5data.Length; i++)
   {
    str += md5data[i].ToString("x").PadLeft(2, &#39;0&#39;);
   }
   Console.WriteLine("加密结果为{0}",str);
  }
로그인 후 복사

내 프로그램, .NET Framework 4.0을 사용합니다.

위 내용은 C# 문자열 처리 가젯에 대한 자세한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

C#을 사용한 Active Directory C#을 사용한 Active Directory Sep 03, 2024 pm 03:33 PM

C#을 사용한 Active Directory 가이드. 여기에서는 소개와 구문 및 예제와 함께 C#에서 Active Directory가 작동하는 방식에 대해 설명합니다.

C#의 난수 생성기 C#의 난수 생성기 Sep 03, 2024 pm 03:34 PM

C#의 난수 생성기 가이드입니다. 여기서는 난수 생성기의 작동 방식, 의사 난수 및 보안 숫자의 개념에 대해 설명합니다.

C# 데이터 그리드 보기 C# 데이터 그리드 보기 Sep 03, 2024 pm 03:32 PM

C# 데이터 그리드 뷰 가이드. 여기서는 SQL 데이터베이스 또는 Excel 파일에서 데이터 그리드 보기를 로드하고 내보내는 방법에 대한 예를 설명합니다.

C#의 액세스 한정자 C#의 액세스 한정자 Sep 03, 2024 pm 03:24 PM

C#의 액세스 수정자에 대한 안내입니다. 예제 및 출력과 함께 C#의 액세스 한정자의 소개 유형에 대해 논의했습니다.

C# 직렬화 C# 직렬화 Sep 03, 2024 pm 03:30 PM

C# 직렬화 가이드. 여기에서는 C# 직렬화 개체의 소개, 단계, 작업 및 예제를 각각 논의합니다.

C#의 패턴 C#의 패턴 Sep 03, 2024 pm 03:33 PM

C#의 패턴 가이드. 여기에서는 예제 및 코드 구현과 함께 C#의 패턴 소개 및 상위 3가지 유형에 대해 설명합니다.

C#의 소수 C#의 소수 Sep 03, 2024 pm 03:35 PM

C#의 소수 가이드. 여기서는 코드 구현과 함께 C#의 소수에 대한 소개와 예를 논의합니다.

C#의 팩토리얼 C#의 팩토리얼 Sep 03, 2024 pm 03:34 PM

C#의 팩토리얼 가이드입니다. 여기서는 다양한 예제 및 코드 구현과 함께 C#의 계승에 대한 소개를 논의합니다.

See all articles