2016-07-20 15 views
0

文字と数字で文字列を分割する方法を見つけようとしていますが、運が良かったです。テキストと整数を配列/リストに分割する

例: 私はすべてのヘルプははるかに高く評価されるだろう、私はどちらかの2つの値"AAAA000343"及び"BBB343"または4 "AAAA""000343""BBB""343"

にに分割する必要が午前"AAAA000343BBB343"

文字列を持っている

ありがとう

+2

正規表現は、ここにあなたの友人であるにあなたの文字列を分割するRegExアプローチです。 –

+1

これまでに何を試しましたか?あなたは仕事を分かち合い、私たちはそこから手助けすることができます。あなたはただの解決策を望んでいるだけでなく、何か助けを必要としています。 –

+0

あなたは分割の詳細を説明できますか?分割する場所はどうやって決めるのですか? – elyashiv

答えて

3

を4つの値

string input = "AAAA000343BBB343"; 
string[] result = Regex.Matches(input, @"[a-zA-Z]+|\d+") 
         .Cast<Match>() 
         .Select(x => x.Value) 
         .ToArray(); //"AAAA" "000343" "BBB" "343" 
+0

ありがとう!これは完璧に感謝:)私は本当に正規表現の詳細を調べる必要があります –

2

regex

"AAAA000343" および "BBB343"

var regex = new Regex(@"[a-zA-Z]+\d+"); 
var result = regex 
       .Matches("AAAA000343BBB343") 
       .Cast<Match>() 
       .Select(x => x.Value); 

// result outputs: "AAAA000343" and "BBB343" 

4 "AAAA" の "000343" "BBB" "343"

について

参照は、このお試しください

-1

に答える@fubo:ここ

var numAlpha = new Regex("(?<Alpha>[a-zA-Z]*)(?<Numeric>[0-9]*)"); 
var match = numAlpha.Match("codename123"); 

var Character = match.Groups["Alpha"].Value; 
var Integer = match.Groups["Numeric"].Value; 
+0

これは、両方の文字と数字の最初のインスタンスだけを取得します。 'codename123'ではなく、提供されたデータで試してみるべきです。しかし、名前のついたキャプチャをうまく使っています。 – Bobson

関連する問題