Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 拆分字符串直到出现特定字符_C# - Fatal编程技术网

C# 拆分字符串直到出现特定字符

C# 拆分字符串直到出现特定字符,c#,C#,如何解析上述字符串值以删除时间字符串。输入值可以使用格式1hr projectA或1.25hr projectA,输出为projectA string projectname= "1.25hr projectA"; 在这一行中,输出为1.25h projectname = projectname.Substring(0, projectname.IndexOf('r')).Trim(); 您可以使用一个简单的正则表达式来解析文本:regex.Replace(rawValue,@“^[\d|

如何解析上述字符串值以删除时间字符串。输入值可以使用格式
1hr projectA
1.25hr projectA
,输出为
projectA

string projectname= "1.25hr projectA"; 
在这一行中,输出为1.25h

projectname = projectname.Substring(0, projectname.IndexOf('r')).Trim();

您可以使用一个简单的正则表达式来解析文本:
regex.Replace(rawValue,@“^[\d|.| hr]+”,“”)。Trim()

你的问题很模糊。如果要删除
“1.25小时”
等发生率:

[Theory]
[InlineData("1.25hr projectA")]
[InlineData("1hr projectA")]
[InlineData("projectA")]
public void Can_parse_project_name(string rawValue)
{
    var projectName= Regex.Replace(rawValue, @"^[\d|.|hr]+", "").Trim();

    projectName.Should().Be("projectA");
}
如果您想修剪并包括最后一个“hr”


使用
projectname=projectname.Split().Last()问题是什么?我需要从“1.25小时项目A”中删除字符串1.25小时。谢谢。它将给出类似hr projectA的结果。我还需要删除hr.projectname=Regex.Replace(projectname,@“^[hr\d|.| hr|]+”,“”)。Trim();我得到了预期的输出,谢谢。@Logeswari Jegatheesan欢迎您。请选择其中一个答案作为您选择的答案。谢谢。但对于我的示例,它将返回空值您的示例
,我在这两种情况下都得到了
projectA
[Theory]
[InlineData("1.25hr projectA")]
[InlineData("1hr projectA")]
[InlineData("projectA")]
public void Can_parse_project_name(string rawValue)
{
    var projectName= Regex.Replace(rawValue, @"^[\d|.|hr]+", "").Trim();

    projectName.Should().Be("projectA");
}
   string source = "my 1.45hr and 5.31hr test project";

   // "my and test project"
   string result = Regex.Replace(source, @"[0-9.]+hr\s+", "");
   // "test project"
   string result = Regex.Match(source, 
     @"[0-9.]+hr\s+(.+?)$", 
     RegexOptions.RightToLeft).Groups[1].Value;