Metoda (char) (sistem)

Ca separator decorat parametru ParamArrayAttribute atribut compilatoare va interpreta un personaj ca un tablou de caractere, un element. Acest lucru nu este atât pentru alte String. suprasarcină Split, inclusiv opțiunea de separator; trebuie să treacă în mod explicit șirul de caractere de suprasarcină ca separator argument.

Split (Char []) metoda preia substringul dat rând, separate de unul sau mai multe caractere într-o matrice de separator și returnează subșirul sub formă de elemente din matrice.

Split (Char []) Metoda localizează separatoare care efectuează comparația utilizând regulile de sortare ordinal sensibil. Pentru mai multe informații despre cuvântul, linie și numere de serie, a se vedea. În secțiunea System.Globalization. CompareOptions listare.

Metoda Split, nu este întotdeauna cel mai bun mod de a împărți un șir de delimitatori string c. Dacă nu doriți să eliminați toate aparițiile unui șir delimitat, sau dacă doriți pentru a analiza un șir de caractere dintr-un șablon în loc de un set de delimitatori, luați în considerare următoarele opțiuni.

Dacă rândurile corespund unui model fix, o expresie regulată poate fi utilizată pentru extracția și prelucrarea elementelor lor. . De exemplu, în cazul în care rândurile sunt reprezentate ca „nomeroperandnomer“ pot folosi expresii regulate pentru a extrage și elementele de linie proces Următorul este un exemplu:

Coincidenta cu una sau mai multe cifre zecimale. Acesta este al treilea artist de înregistrare.

Puteți utiliza, de asemenea, o expresie regulată pentru a extrage subșir dintr-un șir de caractere, bazat pe un șablon, mai degrabă decât un set fix de simboluri. Acesta este un scenariu foarte frecvente, atunci când una dintre aceste condiții:

Unul sau mai multe caractere Delimitator nu sunt utilizate întotdeauna ca separator într-o instanță de String.

Secvența și numărul de delimitatori variativen sau necunoscute.

De exemplu, metoda Split, nu poate fi utilizat pentru separarea liniei următoare, deoarece numărul de caractere \ n (în C #) sau vbCrLf (în Visual Basic) este diferit, iar acestea nu sunt întotdeauna utilizate ca separatoare.

Dacă nu sunteți interesat în toate sub-șirul s-ar putea potrivi cu tine mai mult pentru a lucra cu una dintre metodele de siruri de caractere de comparare, care returnează indicele la care începe meciul. Poate provoca metoda Subșir pentru extragerea unui subșir care este necesară. metode de comparare șir includ:

IndexOf. care returnează indicele zero-based de prima apariție a unui caracter sau șir într-o instanță șir.

IndexOfAny. care returnează indicele zero-based a primei apariții a oricărui caracter dintr-o serie de caractere în instanța curentă a șirului.

LastIndexOf. care returnează indicele zero-based de ultima apariție a unui caracter sau șir într-un șir de instanță.

LastIndexOfAny. care returnează indicele zero-based de ultima apariție a caracterului unui șir de caractere în instanța curentă a șirului.

Exemplul următor utilizează metoda indexOf la punctele de căutare în linie. Se folosește atunci metoda Subșir pentru a reveni la propunerea completă.

Metodele despartita aloca memorie pentru un obiect, iar obiectul matrice String returnat pentru fiecare element de matrice. În cazul în care aplicația necesită o performanță optimă sau de alocare de memorie joacă un rol important în aplicarea, ia în considerare utilizarea indexOf sau IndexOfAny metodă. Există, de asemenea, posibilitatea de a folosi metoda Compara pentru a căuta subsirul.

Pentru a împărți un șir pe delimitator, utilizați metoda indexOf sau IndexOfAny de a găsi semne de separatoare într-un rând. Pentru a sparge un șir într-un delimitator șir sau utilizați metoda indexOf IndexOfAny pentru detectarea unei prime linii-delimitator. Apoi, folosind metoda Compara pentru a determina dacă semnele sunt egale cu primul caracter după celelalte simboluri linie separator.

Mai mult decât atât, în cazul în care setul de caractere este folosit pentru a separa câteva rânduri Split, apeluri de metode, se recomandă să creați o matrice de referință și în fiecare apel este metoda. Acest lucru reduce semnificativ sarcina suplimentară, fiecare apel metoda.

Note apelanților:

În .NET Framework 3.5 și versiunile anterioare, în cazul în care metoda Split este transmisă de separare. nul sau nu conține caractere, metoda utilizează un set ușor diferit de caractere pentru a sparge linia, decât metoda Trim efectuează linia trunchiere. .NET Framework 4, ambele metode folosesc același set de caractere goale Unicode.

Următorul exemplu arată cum se extrage cuvintele individuale dintr-un bloc de text, luând în considerare spațiile și semnele de punctuație ca separatori. O serie de caractere transmise parametru separator String. Split, (Char []) Metoda constă dintr-un spațiu și o filă, precum și unele semne de punctuație speciale.