正規表現で文字列をフィルタリングしようとしていますが、私は正規表現に慣れていないので少し助けてください。また、私は、文字列が怒鳴る入力の例のように、特定の正規表現の一部が含まれているかどうかを確認する必要があります。c#文字列のフィルタリングと正規表現による分割
入力(文字列):
"<value1;127.0.0.1:20000;value2;value3>Lorem ipsum dolor sit amet!"
これらの値を返すが存在する場合:
string val1 = ????; //can't be null or empty, must be at least 3 chars/ints
string val2 = ????; //can be empty string
string val3 = ????; //can be empty string
string ipaddress = ????; // can't be empty
string text = ????; //can be empty string
それ以外の場合は "lorem ipsum ..."というテキストのみを返してください。テキスト:
string text = ????; //can be empty string
だからまず特定の部分がであるかどうかを確認する必要があります。 文字列にはその部分を使用できません。
どうすればいいのか説明できますか?
編集:ここでは(私は正規表現と本当に悪いんだ、判断しないでください) は、私が試したものです:
private static bool ifContain(string a)
{
return Regex.IsMatch(a, @"([a-zA-Z0-9]*)\;([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\:[0-9]{5})([a-zA-Z0-9*)\;([a-zA-Z0-9]*)\;([<a-zA-Z0-9]*)");
}
Google正規表現のルールと正規表現のデバッガ(それを読んで実験してください)が解決できない場合は、正規表現と文字列を表示してください。 –
クイック・コメントでは、この関数を使用できます: 'string.IsNullOrWhiteSpace()'または 'string.IsNullOrEmpty()'が空であるかどうかを確認します。 –
さて、私はポストを編集しました、私は貧しい例を投稿します。 – Gogo