第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

c#要怎么樣才能這樣提取字符串?

c#要怎么樣才能這樣提取字符串?

C C#
慕慕森 2022-07-21 15:11:15
<1,a,a,a,a,s,d,we><q,we,e,e,r,這個(gè)是第一條數(shù)據(jù),第二條數(shù)據(jù)d,d,e,f,c,><ahheiuheikuhfkhkn第三條數(shù)據(jù)fgrejjkfjgjr,dfg,wef,wef><dsd,df,efr,grt,>一條完整數(shù)據(jù)是以<>開(kāi)頭和結(jié)束的如 1.<1,a,a,a,a,s,d,we>2.<q,we,e,e,r,d,d,e,f,c,>3.<ahheiuheikuhfkhknfgrejjkfjgjr,dfg,wef,wef>4.<dsd,df,efr,grt,>c#要怎么樣才能這樣提取字符串?dāng)?shù)據(jù)是 string i;可是i是socket傳回來(lái)的數(shù)據(jù)流 每傳一次就是一條數(shù)據(jù)
查看完整描述

3 回答

?
梵蒂岡之花

TA貢獻(xiàn)1900條經(jīng)驗(yàn) 獲得超5個(gè)贊

string s = string.Empty;
while(true)
{
int i = str.IndexOf("><",0); //str是你的數(shù)據(jù),在while循環(huán)外初始化它
if(i>0)
{
s = str.Substring(0,i);
str = str.Remove(0,i);
// 這里s 就是你想要的單個(gè)數(shù)據(jù),在這里把它打印或其它處理
}
else
{
// 這里 str 也是你想要的單個(gè)數(shù)據(jù),這是最后一條,在這里把它打印或其它處理
return;
}
}

這是我的想法,先獲取“><”所在索引,然后截取出來(lái),并在源數(shù)據(jù)中將截取出的部分刪除掉,最后獲取不到“><”的索引,表示是最后一條數(shù)據(jù)了,不知道能不能實(shí)現(xiàn),你自己試下,或等等看別人還有什么好方法

查看完整回答
反對(duì) 回復(fù) 2022-07-24
?
MMMHUHU

TA貢獻(xiàn)1834條經(jīng)驗(yàn) 獲得超8個(gè)贊

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string input1 = "<1,a,a,a,a,s,d,we><q,we,e,e,r,";
string input2 = "d,d,e,f,c,><ahheiuheikuhfkhkn";
string input3 = "fgrejjkfjgjr,dfg,wef,wef><dsd,df,efr,grt,>";
bool validate = StringConverter.ValidateTagIsClose(input1, input2, input3);
if (validate)
{
List<string> myString = StringConverter.GetConvertString(input1, input2, input3);
foreach (string str in myString)
{
Console.WriteLine(str);
}
}
else
{
Console.WriteLine("開(kāi)始標(biāo)記和結(jié)束標(biāo)記不成對(duì)!");
}
Console.ReadKey();
}
}
public static class StringConverter
{
public static char startTag = '<';
public static char endTage = '>';
public static List<string> GetConvertString(params string[] input)
{
List<string> outResult = new List<string>();
string completeString = string.Empty;
foreach (string str in input)
{
completeString += str;
}
char[] completeChars = completeString.ToCharArray();
List<int> startTagIndexs = new List<int>();
List<int> endTagIndexs = new List<int>();

for (int i = 0; i < completeChars.Length; i++)
{
if (completeChars[i].CompareTo(startTag) == 0)
{
startTagIndexs.Add(i);
}
if (completeChars[i].CompareTo(endTage) == 0)
{
endTagIndexs.Add(i);
}
}
for (int j = 0; j < startTagIndexs.Count; j++)
{
int startTagIndex = startTagIndexs[j];
int endTagIndex = endTagIndexs[j];
outResult.Add(completeString.Substring(startTagIndex,endTagIndex-startTagIndex+1));
}
return outResult;
}

/// <summary>
/// 驗(yàn)證標(biāo)記是否完整關(guān)閉,也就是說(shuō)如果存在一個(gè)‘<’,則必須存在一個(gè)‘>’
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
public static bool ValidateTagIsClose(params string[] input)
{
string completeString = string.Empty;
foreach (string str in input)
{
completeString += str;
}
char[] inputChars = completeString.ToCharArray();
int tagCount = 0;
foreach (char c in inputChars)
{
if (c.CompareTo(startTag) == 0 || c.CompareTo(endTage) == 0)
{
tagCount += 1;
}
}

if (tagCount % 2 == 0)
return true;
else
return false;
}
}
}


查看完整回答
反對(duì) 回復(fù) 2022-07-24
?
人到中年有點(diǎn)甜

TA貢獻(xiàn)1895條經(jīng)驗(yàn) 獲得超7個(gè)贊

var a="<1,a,a,a,a,s,d,we><q,we,e,e,r,";
var b="d,d,e,f,c,><ahheiuheikuhfkhkn";
var c="fgrejjkfjgjr,dfg,wef,wef><dsd,df,efr,grt,>";

var html=a+b+c;

const string pattern = @"<.*?>";
var regex = new Regex(pattern);
var matches = regex.Matches(html);
foreach(var value in matches)
{
//value.ToString()就是你想要的
}


查看完整回答
反對(duì) 回復(fù) 2022-07-24
  • 3 回答
  • 0 關(guān)注
  • 145 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)