Πώς να χωρίσετε μια συμβολοσειρά σε δύο μεταβλητές στο PowerShell

Κοντινό πλάνο των χεριών που πληκτρολογούν στο φορητό υπολογιστή. Έννοια της νυχτερινής εργασίας.

Εάν έχετε μια συμβολοσειρά κειμένου στο Microsoft PowerShell, είναι συχνά χρήσιμο να χωρίσετε τη συμβολοσειρά σε πολλές μεταβλητές.

Πίστωση εικόνας: dusanpetkovic/iStock/GettyImages

Εάν έχετε μια συμβολοσειρά κειμένου στο Microsoft PowerShell, είναι συχνά χρήσιμο να χωρίσετε τη συμβολοσειρά σε πολλές μεταβλητές. Για παράδειγμα, μπορεί να έχετε το όνομα και το επίθετο ενός χρήστη διαχωρισμένα με ένα κενό ή έναν αριθμό τηλεφώνου που αρχίζει με έναν κωδικό περιοχής. Μπορείτε να χρησιμοποιήσετε την ενσωματωμένη λειτουργία PowerShell Split για να το κάνετε αυτό. Άλλες συναρτήσεις είναι διαθέσιμες ώστε το PowerShell να αναλύει μια συμβολοσειρά με άλλους τρόπους.

Κατανόηση του Microsoft PowerShell

Το PowerShell είναι ένα εργαλείο γραμμής εντολών και μια γλώσσα προγραμματισμού που παρέχεται από τη Microsoft. Είναι η αντικατάσταση του παλαιότερου εργαλείου δέσμης ενεργειών των Windows και DOS, το οποίο είναι επίσης διαθέσιμο στις περισσότερες εκδόσεις των Windows.

Το βίντεο της ημέρας

Συχνά χρησιμοποιείται για το συνδυασμό της εξόδου από πολλά προγράμματα ή για τη μετάδοση δεδομένων από το ένα πρόγραμμα στο άλλο, επομένως είναι χρήσιμο να το χρησιμοποιείτε για τον χειρισμό συμβολοσειρών.

Η λειτουργία διαχωρισμού PowerShell

Εάν έχετε μια συμβολοσειρά στο PowerShell και θέλετε να τη χωρίσετε σε κάποιο χαρακτήρα, μπορείτε να το κάνετε χρησιμοποιώντας το ενσωματωμένο Διαίρεση λειτουργία. Είτε γράψτε s -Split, όπου s είναι η μεταβλητή που περιέχει τη συμβολοσειρά, είτε καλέστε s.split. Η συνάρτηση θα επιστρέψει έναν πίνακα που περιέχει καθένα από τα στοιχεία της συμβολοσειράς διαχωρισμού, το οποίο μπορείτε να καταγράψετε σε μια μεταβλητή όπως

$a = s.split()

Μπορείτε να τις αντιστοιχίσετε σε μεταβλητές προσεγγίζοντας τα μεμονωμένα στοιχεία ως $a[0], $a[1] και ούτω καθεξής ή να τα διατηρήσετε στον πίνακα, εάν αυτό είναι πιο χρήσιμο.

Ο διαχωρισμός συμβολοσειρών είναι συχνά χρήσιμος όταν χρειάζεται να σπάσετε την είσοδο χρήστη ή την έξοδο από άλλο πρόγραμμα στα συστατικά μέρη του.

Επιλογές διαχωρισμού PowerShell

Από προεπιλογή, το PowerShell θα χωρίσει τη συμβολοσειρά σε χαρακτήρες κενού διαστήματος, συμπεριλαμβανομένων των διαστημάτων, των αλλαγών γραμμής και των καρτελών. Σε ορισμένες περιπτώσεις, μπορεί να θέλετε να χωρίσετε τη συμβολοσειρά σε έναν άλλο χαρακτήρα, όπως κόμμα ή παύλα ή μια συμβολοσειρά όπως "και."

Για να το κάνετε αυτό, κάντε τον επιθυμητό χαρακτήρα ή συμβολοσειρά να χωριστεί γύρω από το δεύτερο όρισμα στη συνάρτηση split, γράφοντας s.split(",") ή s -split "," για διαχωρισμό σε κόμμα, για παράδειγμα. Όποιο χαρακτήρα κι αν επιλέξετε να δώσετε στο PowerShell ως οριοθέτης, ή διαχωριστικό, θα παραλειφθεί από όλες τις συμβολοσειρές αποτελεσμάτων.

Μπορείτε επίσης να επιλέξετε α μέγιστος αριθμός συμβολοσειρών προς διαχωρισμό παρέχοντας αυτό ως πρόσθετο επιχείρημα. Για παράδειγμα, "a, b, c, d".split(",",2) θα δώσει έναν πίνακα με τα στοιχεία "a" και "b, c, d" ενώ "a, b, c, d". Το split(",") θα δώσει έναν πίνακα με κάθε γράμμα στη δική του συμβολοσειρά.

Κόψιμο μιας συμβολοσειράς στο PowerShell

Μπορείτε να περικόψετε μια συμβολοσειρά από το PowerShell ή να αφαιρέσετε τους πλεονάζοντες χαρακτήρες από την αρχή ή το τέλος, χρησιμοποιώντας το τακτοποίηση λειτουργία. Από προεπιλογή, θα αφαιρέσει το κενό διάστημα από την αρχή και το τέλος της συμβολοσειράς.

Για παράδειγμα, " a ".trim() θα δώσει το αποτέλεσμα "a." Μπορείτε να καθορίσετε άλλους χαρακτήρες που θέλετε να αφαιρεθούν από τη συμβολοσειρά ως όρισμα, οπότε το "^$a ".trim(" ^") θα δώσει το αποτέλεσμα "$a."

Μπορείτε να χρησιμοποιήσετε τις συναρτήσεις TrimStart και TrimEnd για να αφαιρέσετε μόνο χαρακτήρες από την αρχή ή το τέλος της συμβολοσειράς.

Αυτό είναι συχνά χρήσιμο όταν έχετε δεδομένα που λαμβάνονται από έναν χρήστη που τα πληκτρολόγησε σε ένα πλαίσιο εισαγωγής με επιπλέον κενά ή νέες γραμμές στο τέλος.

Η συνάρτηση σύνδεσης PowerShell

Όπως και σε άλλες γλώσσες προγραμματισμού, η PowerShell's Συμμετοχή η λειτουργία είναι ουσιαστικά το αντίθετο από διαίρεση. Παίρνει πολλές χορδές και τις συνδυάζει μαζί με ένα δεδομένο οριοθέτη ή χωρίς καθόλου χώρο.

Για παράδειγμα, το -join ("a","b","c") θα δώσει το αποτέλεσμα "abc", ενώ το "a","b","c" -join " " θα δώσει τη συμβολοσειρά αποτελέσματος "abc ." Αυτό μπορεί να είναι χρήσιμο όταν έχετε πολλές μεταβλητές που πρέπει να συνδυάσετε σε μία για να αποθηκεύσετε σε ένα αρχείο, να μεταβιβάσετε σε άλλη εντολή ή να εξάγετε σε έναν χρήστη.