Python Web Apps with Flask by Ezra Zigmond
Πίνακας περιεχομένων:
- Χρήση των χαρακτήρων Wildcards
- Χρησιμοποιώντας τον χειριστή της περίπτωσης
- Χρησιμοποιώντας το Regex Operator
- Χρησιμοποιώντας το Grep
- συμπέρασμα
Μια από τις πιο συνηθισμένες λειτουργίες όταν εργάζεστε με συμβολοσειρές στο Bash είναι να προσδιορίσετε αν μια συμβολοσειρά περιέχει ή όχι μια άλλη συμβολοσειρά., θα σας δείξουμε διάφορους τρόπους για να ελέγξετε αν μια συμβολοσειρά περιέχει ένα υποσύνολο.
Χρήση των χαρακτήρων Wildcards
Η πιο εύκολη προσέγγιση είναι να περιβάλλετε το υποσύστημα με σύμβολα μπαλαντέρ (αστερίσκο)
*
και να το συγκρίνετε με τη συμβολοσειρά. Η μπαλαντέρ είναι ένα σύμβολο που χρησιμοποιείται για να αντιπροσωπεύει μηδέν, έναν ή περισσότερους χαρακτήρες.
Αν η δοκιμή επιστρέψει
true
, η υποζώνη περιέχεται στη συμβολοσειρά.
Στο παρακάτω παράδειγμα χρησιμοποιούμε την εντολή if και τον χειριστή ισότητας (
==
) για να ελέγξουμε αν το υποσύστημα
SUB
βρίσκεται στο string
STR
:
#!/bin/bash STR='GNU/Linux is an operating system' SUB='Linux' if]; then echo "It's there." fi
Όταν εκτελείται το σενάριο θα εξάγει:
Χρησιμοποιώντας τον χειριστή της περίπτωσης
Αντί να χρησιμοποιήσετε τη εντολή if, μπορείτε επίσης να χρησιμοποιήσετε την εντολή case για να ελέγξετε αν μια συμβολοσειρά περιλαμβάνει ή όχι μια άλλη συμβολοσειρά.
#!/bin/bash STR='GNU/Linux is an operating system' SUB='Linux' case $STR in *"$SUB"*) echo -n "It's there.";; esac
Χρησιμοποιώντας το Regex Operator
Μια άλλη επιλογή για να προσδιορίσετε αν μια συγκεκριμένη υποζώνη συμβαίνει μέσα σε μια συμβολοσειρά είναι να χρησιμοποιήσετε τον τελεστή regex
=~
. Όταν χρησιμοποιείται αυτός ο χειριστής, η δεξιά συμβολοσειρά θεωρείται ως κανονική έκφραση.
Η περίοδος που ακολουθείται από έναν αστερίσκο
.*
Αντιστοιχεί σε μηδέν ή περισσότερες εμφανίσεις οποιουδήποτε χαρακτήρα εκτός από έναν χαρακτήρα γραμμής νέας γραμμής.
#!/bin/bash STR='GNU/Linux is an operating system' SUB='Linux' if]; then echo "It's there." fi
Το σενάριο θα επαναλάβει τα εξής:
Χρησιμοποιώντας το Grep
Η εντολή grep μπορεί επίσης να χρησιμοποιηθεί για να βρει συμβολοσειρές σε μια άλλη συμβολοσειρά.
Στο ακόλουθο παράδειγμα, περάσαμε τη συμβολοσειρά
$STR
ως είσοδο για grep και ελέγχοντας αν η συμβολοσειρά
$SUB
βρίσκεται μέσα στη συμβολοσειρά εισόδου. Η εντολή θα επιστρέψει
true
ή
false
, ανάλογα με την περίπτωση.
#!/bin/bash STR='GNU/Linux is an operating system' SUB='Linux' if grep -q "$SUB" <<< "$STR"; then echo "It's there" fi
Η επιλογή
-q
λέει ότι το grep είναι ήσυχο, για να παραλείψει την έξοδο.
συμπέρασμα
Ο έλεγχος αν μια συμβολοσειρά περιέχει μια υποζώνη είναι μία από τις πιο βασικές και συχνά χρησιμοποιούμενες λειτουργίες σε δέσμες ενεργειών Bash.
Αφού διαβάσετε αυτό το σεμινάριο, θα πρέπει να έχετε μια καλή κατανόηση για το πώς να ελέγξετε εάν μια συμβολοσειρά περιλαμβάνει μια άλλη συμβολοσειρά. Μπορείτε επίσης να χρησιμοποιήσετε άλλες εντολές όπως
awk
ή
sed
για δοκιμή.
Είναι ένα υβριδικό GPS / UMPC σε λογικές τιμές, αλλά τα χαρακτηριστικά του στο Internet μπορεί να είναι προβληματικά. σε έναν εξαιρετικά κινητό υπολογιστή και έχετε μια πολύ καλή ιδέα για το τι προσφέρει η Clarion στο Clarion MiND (NR1UB). Με μια πρώτη ματιά, με μια οθόνη μεγέθους 4,8 ίντσες, μοιάζει με μια μεγάλη προσωπική συσκευή πλοήγησης (έρχεται με φορτιστή αυτοκινήτου και βάση mount), αλλά η πλοήγηση είναι μόνο μία από τις περισσότερες από δώδεκα επιλογές για την κύλιση, βασισμένη σε εικον
Σε $ 299 για το Lot, το Clarion MiND μπορεί να ακούγεται σαν τεράστια συμφωνία. Αλλά υπάρχει ένα μεγάλο gotcha: Είστε υπεύθυνοι για την παροχή σύνδεσης στο Διαδίκτυο για τα χαρακτηριστικά που εξαρτώνται από αυτό - και αυτά είναι όλα εκτός από το GPS. Η συσκευή προσφέρει πολλές επιλογές συνδεσιμότητας, τόσο ενσύρματες όσο και ασύρματες. παρκαρισμένο στο γκαράζ, ίσως να περάσετε με μια σύνδεση Wi-Fi (ρύθμιση ότι είναι πολύ εύκολο). Αλλά στο δρόμο θα χρειαστείτε ένα τηλέφωνο με υπηρεσία δεδομένων (
Δεν υπάρχει στο βιβλίο μου. Ενώ η πρόσβαση στο Διαδίκτυο βασίζεται σε κυψέλες έχει ένα μεγάλο πλεονέκτημα - μπορείτε να έχετε πρόσβαση στο Διαδίκτυο στον υπολογιστή σας οπουδήποτε μπορείτε να χρησιμοποιήσετε το κινητό σας τηλέφωνο - περιέχει μερικά πολύ σοβαρά αρνητικά.
Το ένα είναι αργό. Οι κινητοί φορείς, όπως η Sprint και η Verizon, υπόσχονται ταχύτητες λήψης που ξεπερνούν τα μόλις 1,4 Mbps - και μπορούν να πέσουν τόσο χαμηλά όσο τα .6Mbps. "Το ασύρματο σήμα, λόγω της φύσης του, είναι εξαιρετικά μεταβλητό, δηλαδή πολλά πράγματα, όπως η παρεμπόδιση από σταθερά αντικείμενα (κτίρια, δέντρα κ.λπ.), ο καιρός, το φορτίο δικτύου, οι θέσεις πύργων κυψελών και η ώρα της ημέρας, μπορούν να επηρεάσουν την ποιότητα του σήματος ", λέει ο Mark Sullivan σε μια μέρα στη ζωή
Πώς να διαιρέσετε μια συμβολοσειρά στο Python
Μια από τις κοινές λειτουργίες όταν εργάζεστε με συμβολοσειρές είναι να διαιρέσετε μια συμβολοσειρά σε μια σειρά υποσυνάρσεων χρησιμοποιώντας έναν συγκεκριμένο απομεμακρυστή. Σε αυτό το άρθρο, θα μιλήσουμε για το πώς να διαιρέσετε συμβολοσειρά στην Python.







