C#之字符串截取--Regex.Match使用

c#之字符串截取--regex.match使用

 

c#字符串截取--regex.match

c#字符串截取–regex.match regex.match方法:在输入字符串中搜索匹配正则表达式模式的子字符串,并将第一个匹配项作为单个match对象返回。

regex.match

方法的重载方法有六种类型,也都差不多,下面就主要给大家讲讲怎么用regex.match方法实现我们需要的功能:

public match match(string input):

在指定的输入字符串中搜索 regex 构造函数中指定的正则表达式的第一个匹配项;参数:要搜索匹配项的字符串;返回结果:一个包含有关匹配的信息的match对象。

match对象:表示单个正则表达式匹配的结果。

其中match对象的groups属性为:获取由正则表达式匹配的组的集合。

如果我们要用regex.match方法,首先我们要添加using system.text.regularexpressions;这个引用。

static void main(string[] args)
      {
          string s1 = "所属机构名称/教师姓名/课程类型/课程名称";
          //定义一个能够将我们需要的东西截取出来的正则表达式
          regex regex = new regex(@"(.*)/(.*)/(.*)/(.*)", regexoptions.ignorecase);
          //显示每一个满足正则表达式的子字符串
          foreach (var i in regex.match(s1).groups)
          {
              console.writeline(i);
          }
      }

 

c#的字符串截取,长度未定时

设:

str="前字符串=后字符串";

"needstr"作为我们需要的内容;

注意所选取的字符未定长度的时候选用!

字符串指定两边字符,取中间字符

//我们希望得到的字符串“=”;
needstr = new regex("(?<=(" + "前字符串" + "))[.\\s\\s]*?(?=(" + 后字符串 + "))", regexoptions.multiline | regexoptions.singleline).match(str).value;

字符串指定最后一个分割字符,取前面字符

//得到“前字符串”
needstr= targetstring.substring(0,targetstring.lastindexof("指定字符串"));

字符串指定最后一个分割字符,取后面字符(已知长度)

//得到“后”
needstr= targetstring.substring(targetstring.lastindexof("指定字符串")+1,1);

字符串指定最后一个分割字符,取后面字符(未知长度,也就是后面全部)

//得到“后字符串”
//获取所需截取的前面总长度
int index=str.lastindexof("=");
//从该字符后开始,一直到结束的长度为总长-前字符长度-1
 needstr= str.substring(index+1,str.length-index-1);

------------------补充--------------------

去掉最后一个字符

s=s.substring(0,s.length-1);

 

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持硕编程

下一节:c#之如何实现真正的四舍五入

c# 教程

相关文章