读书人

截取字符串有关问题?

发布时间: 2012-12-14 10:33:07 作者: rapoo

截取字符串问题??
题目:string str="Maintenance,x,Transaction,y,Report,z,CheckList,x,Acknowledgement,z,Tools,read,Help,z";
如果我知道了字符串Transaction我要怎么样才能得到他的下一个字符Y??

[最优解释]
string str = "Maintenance,x,Transaction,y,Report,z,CheckList,x,Acknowledgement,z,Tools,read,Help,z";
str = Regex.Match(str, @"(?<=Transaction.*?)[a-zA-Z]").Value;

[其他解释]
直接说需求啊,怎么个不知道法,总有要求么!
[其他解释]
两个逗号中间的字符串吧


String result="";//要求的字符串
String next="";//下一个字符
int index=str.IndexOf("Transaction,");//"Transaction,"的索引
next=str.Substring(index,1);
if(next!=",")
result+=next;

result就是你要截取的字符串
[其他解释]
(str[i] >= 'A' && str[i] <= 'Z'))
{
Console.WriteLine(str[i]); break;
}
不如用正则方便
[其他解释]
string的IndexOf("Transaction")得到位置,然后向后查找,或用正则
[其他解释]
引用:
string str = "Maintenance,x,Transaction,y,Report,z,CheckList,x,Acknowledgement,z,Tools,read,Help,z";
str = Regex.Match(str, @"(?<=Transaction.*?)[a-zA-Z]").Value;
……


能否不用正则表达式呀,用C#方法?
[其他解释]
引用:
string的IndexOf("Transaction")得到位置,然后向后查找,或用正则



怎么写?我就是想要,"Transaction,"后面的一个字符怎么写???
[其他解释]
我就是想要,"Transaction,"后面的一个字符怎么写???
[其他解释]
string str = "Maintenance,x,Transaction,y,Report,z,CheckList,x,Acknowledgement,z,Tools,read,Help,z";
int index = str.IndexOf("Transaction") + "Transaction".Length;
for (int i = index; i < str.Length; i++)
if ((str[i] >= 'a' && str[i] <= 'z')
[其他解释]
str.Substring(str.IndexOf("Transaction,"),1);
[其他解释]
引用:
str.Substring(str.IndexOf("Transaction,"),1);


如果y字符长度不知道呢???
------其他解决方案--------------------


这种不确定性,
还是用正则好些,
直接取 Transaction 后面的第一个单词,
然后在取这个单词的第一个字母
[其他解释]

引用:
直接说需求啊,怎么个不知道法,总有要求么!

string str = "Maintenance,x,Transaction,yasdsad*&^%,Maintenance,x";

我知道“Transaction,”,要求“yasdsad*&^%“???
[其他解释]
(?<=Transaction,)[^,]+
[其他解释]
那就是获得两个‘,’号之间的字符!
[其他解释]
引用:
那就是获得两个‘,’号之间的字符!





不对
[其他解释]
引用:
string str = "Maintenance,x,Transaction,y,Report,z,CheckList,x,Acknowledgement,z,Tools,read,Help,z";
int index = str.IndexOf("Transaction") + "Transaction".Length;
……



是的正则简单,但是我的不指只有a-z或A-Z呀,可能有其它字符,那下面你写的要怎么改?

string str = "Maintenance,x,Transaction,y,Report,z,CheckList,x,Acknowledgement,z,Tools,read,Help,z";
str = Regex.Match(str, @"(?<=Transaction.*?)[a-zA-Z]").Value;

读书人网 >C#

热点推荐