用小写分割字符串开头 [英] Split a string start with lower case

查看:95
本文介绍了用小写分割字符串开头的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,



我正在试图分割一个字符串,以较低的字母开头。



例如:

ABCd; d6523; SiBABC.R; s1; EEcUY



i可以用;拆分这些字符串之后我有一个数组如



arr [] = {ABDd,d6523,SiBABC.R,s1,EEcUY}



然后我希望在较低的评级之后获得价值;

6523,BABC.R,1,UY







EFGi; ABo00004; SEg1004; s4



00004,1004,4



以下我尝试了一些东西,但是当它试图获得TagName的价值时失败了= /

它找到了ABCd,但我希望得到6523



你有什么想法吗?或者你能建议我搜索任何文件吗?



我尝试了什么:



  string  txtLine =   ABCD; d6523; SiBABC.R; S1; EEcUY; 
string [] TagName = new string [] { d Si s EEc};
var arr = txtLine.Split(' ;');

foreach var item in TagName)
{

var val = array.Where(m = > m.IndexOf(item)> -1).FirstOrDefault()。Substring(item.Length);

}

解决方案

试试正则表达式:

(小于= [AZ]?)(小于值及GT; [^ AZ;] +?)(= [AZ;] | 



  string  txtLine =   ABCd; d6523; SiBABC.R; s1; EEcUY; 
MatchCollection matches = Regex.Matches(txtLine, @ (?< = [az])(? <值及GT; [^ AZ;] +)(= [AZ;] | <?/ BLOCKQUOTE>
);
foreach (匹配m 匹配)
{
控制台。的WriteLine(m.Value);
}

生成:

 6523 
BABC.R
1
UY


Hi all,

i am triying to split a string starts with lower letter to end.

Example:
ABCd;d6523;SiBABC.R;s1;EEcUY

i can split these string with ";" after that i have an array like

arr[]={"ABDd","d6523","SiBABC.R","s1","EEcUY"}

then i want to get value after lower lettters like;
6523,BABC.R,1,UY

or

EFGi;ABo00004;SEg1004;s4

00004,1004,4

below i have tried something but, it fails when it tries to get value of TagName=d
it finds "ABCd", but i expect to get "6523"

Do you have any idea ? or Can you suggest me to search any document for that?

What I have tried:

string txtLine="ABCd;d6523;SiBABC.R;s1;EEcUY";
string[] TagName = new string[] { "d", "Si", "s", "EEc" };
var arr = txtLine.Split(';');

 foreach (var item in TagName)
            {
               
                var val = array.Where(m => m.IndexOf(item) > -1).FirstOrDefault().Substring(item.Length);
                
            }

解决方案

Try a regex:

(?<=[a-z])(?<Value>[^a-z;]+?)(?=[a-z;]|


)


string txtLine = "ABCd;d6523;SiBABC.R;s1;EEcUY";
MatchCollection matches = Regex.Matches(txtLine, @"(?<=[a-z])(?<Value>[^a-z;]+?)(?=[a-z;]|


)"); foreach (Match m in matches) { Console.WriteLine(m.Value); }

Generates:

6523
BABC.R
1
UY


这篇关于用小写分割字符串开头的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆