为了账号安全,请及时绑定邮箱和手机立即绑定

如何在相同字符之间提取字符串

如何在相同字符之间提取字符串

C#
拉风的咖菲猫 2021-07-01 07:15:36
我有一个字符串“ABD-DDD-RED-Large”,需要提取“DDD-RED”使用拆分我有:  var split = "ABD-DDD-RED-Large".Split('-');  var first = split[0];  var second = split[1];  var third = split[2];  var fourth = split[3];  string value = string.Join("-", second, third);只是想知道是否有更短的代码
查看完整描述

3 回答

?
慕侠2389804

TA贡献1719条经验 获得超6个赞

我要出去走走,并假设您的字符串始终是四个子字符串除以三个连字符。这样做的主要好处是它只需要基本的 String 库。


您可以使用:


int firstDelIndex = input.IndexOf('-');

int lastDelIndex = input.LastIndexOf('-');

int neededLength = lastDelIndex - firstDelIndex - 1;

result = input.Substring((firstDelIndex + 1), neededLength);

这足够通用,不用关心除了连字符之外的任何实际输入是什么。


您可能希望在方法的开头添加一个 catch 使用它来确保在尝试拉出请求的子字符串之前输入字符串中至少有两个连字符。


查看完整回答
反对 回复 2021-07-03
  • 3 回答
  • 0 关注
  • 170 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信