C# 字符串截取两指定之间的字符

有这样一字符串:1、G1P0;孕8周0天.2、胎膜早破;3、前置胎盘;4、羊水过少;5、双胎;6、RH溶血症;7、癫痫;8、精神病;9、SLE(红斑狼疮);10、原发性高... 有这样一字符串:1、G1P0;孕8周0天.2、胎膜早破;3、前置胎盘;4、羊水过少;5、双胎;6、RH溶血症;7、癫痫;8、精神病;9、SLE(红斑狼疮);10、原发性高血压;11、妊娠期高血压;12、糖尿病;13、甲亢;14、子宫肌瘤;15、卵巢囊肿;16、臀位;17、横位;#
要把所有分号和顿号之间的字符串截取出来保存,问代码怎么写,在线等!
展开
 我来答
生活he家
2014-07-11 · 一个属于大家的搬运工
生活he家
采纳数:1536 获赞数:6828

向TA提问 私信TA
展开全部
你的问题有些模糊 你是要 取 1 2 3 4 5 6 7 吗?
更多追问追答
追问
顿号后面的   :前置胎盘  羊水过少   双胎  ……
追答
string result="";
string s="1、G1P0;孕8周0天.2、胎膜早破;3、前置胎盘;4、羊水过少;5、双胎;6、RH溶血症;7、癫痫;8、精神病;9、SLE(红斑狼疮);10、原发性高血压;11、妊娠期高血压;12、糖尿病;13、甲亢;14、子宫肌瘤;15、卵巢囊肿;16、臀位;17、横位;"

string[] st=s.splite(";");
for(int i=0;i<st.length();i++)
{
result+=st[i].splite("、")[1]+" ";

}

result就是你要的结果
幻想武士
2014-07-11 · TA获得超过1074个赞
知道小有建树答主
回答量:639
采纳率:90%
帮助的人:402万
展开全部
string a="1、G1P....";

string[] b=a.Split(';');//b里面保存的是
//这b里面应该就是你需要的吧,如果顿号前面的数字和顿号不需要的话也可以截取掉
string[] c=new string[c.Length];
for(int i=0;i<c.Length;i++){
int c=b[i].IndexOf('、');//查找顿号的位置
int d=b[i].Length-b[i].IndexOf('、');//获取需要截取的字符串长度
c[i]=b[i].Substring(c+1,d-1);//+1是因为Substring包括前面,但不包括后面。-1是因为前面+了个1,这里需要剪掉
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
婪淹掖仓
2014-07-11 · 超过76用户采纳过TA的回答
知道答主
回答量:162
采纳率:83%
帮助的人:64.4万
展开全部
你的特定字符串是固定的,不会变吧?
那么可以:
string str = "1111aaaa@@@@@@@@bbbb2222";Match m = Regex.Match(str, @"aaaa([\s\S]*?)bbbb");if(m.Success){Response.Write(m.Result("$1"));// 输出aaaa与bbbb之间的字符串}
以上回答你满意么?
追问
会变的,把所有的分号和顿号之间的字符循环保存到集合中
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-07-11
展开全部
for循环的话从i、开始截取,截取出来的长度减一。
追问
能不能具体一点
追答
就是三楼的回答。我跟他的想法一样的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式