Αναζήτηση Συμβολαίων στο JavaScript

Μέθοδος JavaScript για αναζήτηση αλφαβητικής αλληλουχίας:

  • String.indexOf()
  • String.lastIndexOf()
  • String.startsWith()
  • String.endsWith()

String.indexOf()

indexOf() Η μέθοδος επιστρέφει το κείμενο που καθορίζεται στην αλφαβητική αλληλουχίαΠρώτη φοράΕμφάνιση (θέσης) του δείκτη:

Παράδειγμα

let str = "Παρακαλώ βρείτε το σημείο όπου εμφανίζεται το 'locate'!";
str.indexOf("locate")    // επιστρέφει 7

Δοκιμάστε το προσωπικά

Το JavaScript μετρά τις θέσεις από το μηδέν.

0 είναι η πρώτη θέση στη αλφαβητική αλληλουχία, 1 είναι η δεύτερη, 2 είναι η τρίτη ...

String.lastIndexOf()

lastIndexOf() La función devuelve la última posición de aparición del texto especificado en la cadena:

Παράδειγμα

let str = "Παρακαλώ βρείτε το σημείο όπου εμφανίζεται το 'locate'!";
str.lastIndexOf("locate")    // Επιστρέφει 21

Δοκιμάστε το προσωπικά

Si no se encuentra texto:indexOf() και lastIndexOf() Ambos retornan -1:

Παράδειγμα

let str = "Παρακαλώ βρείτε το σημείο όπου εμφανίζεται το 'locate'!";
str.lastIndexOf("Bill")    // Επιστρέφει -1

Δοκιμάστε το προσωπικά

Ambas métodos aceptan el segundo parámetro como la posición de inicio de la búsqueda:

Παράδειγμα

let str = "Παρακαλώ βρείτε το σημείο όπου εμφανίζεται το 'locate'!";
str.indexOf("locate", 15)    // Επιστρέφει 21

Δοκιμάστε το προσωπικά

lastIndexOf() Η μέθοδος αναζητά προς τα πίσω (από το τέλος προς την αρχή), αυτό σημαίνει ότι αν η δεύτερη παράμετρος είναι 15Αν δεν βρεθεί συμφωνία, ξεκινά από τη θέση 15 και αναζητά μέχρι την αρχή του κειμένου.

Παράδειγμα

let str = "Παρακαλώ βρείτε το σημείο όπου εμφανίζεται το 'locate'!";
str.lastIndexOf("locate", 15)    // Επιστρέφει 7

Δοκιμάστε το προσωπικά

String.search()

search() Η μέθοδος αναζητά την καθορισμένη τιμή στο κείμενο και επιστρέφει τη θέση της συμφωνίας:

Παράδειγμα

let str = "Παρακαλώ βρείτε το σημείο όπου εμφανίζεται το 'locate'!";
str.search("locate")     // Επιστρέφει 7

Δοκιμάστε το προσωπικά

Σημείωσατε αυτό;

indexOf() και search() Οι δύο αυτές μεθόδους, είναι ίδιες;

Αποδέχονται τα ίδια παραμέτρους και επιστρέφουν τα ίδια αποτελέσματα?

Αυτές οι δύο μεθόδους δεν είναι ίδιες. Οι διαφορές είναι οι εξής:

  • search() Η μέθοδος δεν μπορεί να δεχθεί δεύτερο παράμετρο ως σημείο έναρξης.
  • indexOf() Η μέθοδος δεν μπορεί να χρησιμοποιήσει ισχυρές τιμές αναζήτησης (τυποποιημένες εκφράσεις).

Θα μάθετε περισσότερα για τις τυποποιημένες εκφράσεις στις επόμενες ενότητες.

String.match()

Η μέθοδος match() αναζητά συμφωνίες με την τυποποιημένη έκφραση στο κείμενο και επιστρέφει τις συμφωνίες ως αντικείμενο Array.

Παράδειγμα 1

Αναζητήστε το "ain" στο κείμενο:

let text = "Ο καιρός στη ΣΠANIΗ μένει κυρίως στην πεδιάδα";
text.match(/ain/g)    // Επιστρέφει το μοτίβο [ain,ain,ain]

Δοκιμάστε το προσωπικά

Μάθετε περισσότερα για τις τυποποιημένες εκφράσεις στο κεφάλαιο JS RegExp.

Αν η τυποποιημένη έκφραση δεν περιέχει τον μοτίβο g (εκτελεί αναζήτηση σε όλο το κείμενο), η μέθοδος match() θα επιστρέψει μόνο το πρώτο συμφωνούντo στοιχείο του κειμένου.

Γλωσσική δομή

string.match(regexp)
regexp Απαιτείται. Η τιμή που πρέπει να αναζητηθεί, είναι μια τυποποιημένη έκφραση.
Επιστρέφει: Μαθαίνετε ένας πίνακας που περιέχει τα αποτελέσματα της αναζήτησης, κάθε στοιχείο αντιστοιχεί σε ένα στοιχείο, αν δεν βρεθεί συμφωνία, είναι null.

Παράδειγμα 2

Εκτελέστε μια μη διαφοροποιημένη από το γράμμα αναζήτηση για το "ain":

let text = "Ο καιρός στη ΣΠANIΗ μένει κυρίως στην πεδιάδα";
text.match(/ain/gi)   // Επιστρέφει το πίνακα [ain,AIN,ain,ain]

Δοκιμάστε το προσωπικά

String.includes()

Αν η αλφαβητική ακολουθία περιέχει την καθορισμένη τιμήincludes() Η μέθοδος επιστρέφει true.

Παράδειγμα

let text = "Hello world, welcome to the universe.";
text.includes("world")    // Επιστρέφει true

Δοκιμάστε το προσωπικά

Υποστήριξη των προγραμμάτων περιήγησης

Ο Internet Explorer δεν υποστηρίζει String.includes().

Chrome IE Firefox Safari Opera
Chrome 41 Edge 12 Firefox 40 Safari 9 Opera 28
Μάρτιος 2015 Ιούλιος 2015 Αύγουστος 2015 Οκτώβριος 2015 Μάρτιος 2015

Γλωσσική δομή

string.includes(searchvalue, start)
searchvalue Απαιτείται. Απαιτείται η αλφαβητική ακολουθία αναζήτησης.
start Προαιρετικό. Προεπιλεγμένο 0. Το σημείο έναρξης της αναζήτησης.
Επιστρέφει: Επιστρέφει αν η αλφαβητική ακολουθία περιέχει την τιμή. true,αν όχι επιστρέφει false.
Έκδοση JS: ES6 (2015)

Έλεγχος αν η αλφαβητική ακολουθία περιέχει "world", ξεκινώντας από τη θέση 12:

let text = "Hello world, welcome to the universe.";
text.includes("world", 12)    // Επιστρέφει false

Δοκιμάστε το προσωπικά

String.startsWith()

Αν η αλφαβητική ακολουθία ξεκινά με την καθορισμένη τιμή startsWith() Η μέθοδος επιστρέφει true,αν όχι επιστρέφει false:

Παράδειγμα

let text = "Hello world, welcome to the universe.";
text.startsWith("Hello")   // Επιστρέφει true

Δοκιμάστε το προσωπικά

Γλωσσική δομή

string.startsWith(searchvalue, start)

Τιμή παράμετρου

Παράμετρος Περιγραφή
searchvalue Απαιτείται. Απαιτείται να αναζητηθεί η τιμή.
start Προαιρετικό. Προεπιλεγμένο 0. Το σημείο έναρξης της αναζήτησης.

Παράδειγμα

let text = "Hello world, welcome to the universe.";
text.startsWith("world")    // Επιστρέφει false
let text = "Hello world, welcome to the universe.";
text.startsWith("world", 5)    // Επιστρέφει false
let text = "Hello world, welcome to the universe.";
text.startsWith("world", 6)    // Επιστρέφει true

Δοκιμάστε το προσωπικά

Σημείωση:startsWith() Μέθοδος διαφοροποίησης κεφαλαίων και μικρών γραμμάτων.

Ο Internet Explorer δεν υποστηρίζει startsWith() Μέθοδος.

Η πρώτη πλήρως υποστηριζόμενη έκδοση του προγράμματος περιήγησης είναι:

Chrome IE Firefox Safari Opera
Chrome 41 Edge 12 Firefox 17 Safari 9 Opera 28
Μάρτιος 2015 Ιούλιος 2015 Αύγουστος 2015 Οκτώβριος 2015 Μάρτιος 2015

String.endsWith()

Αν η αλφαβητική ακολουθία τελειώνει με την καθορισμένη τιμή endsWith() Η μέθοδος επιστρέφει true,αν όχι επιστρέφει false:

Παράδειγμα

Έλεγχος αν η αλφαβητική ακολουθία τελειώνει με "Gates":

var text = "Bill Gates";
text.endsWith("Gates")    // Επιστρέφει true

Δοκιμάστε το προσωπικά

Γλωσσική δομή

string.endsWith(searchvalue, length)

Τιμή παράμετρου

Παράμετρος Περιγραφή
searchvalue Απαιτείται. Απαιτείται να αναζητηθεί η τιμή.
length Επιλογή. Η μήκος που θέλετε να αναζητήσετε.

Αναζητήστε το κείμενο που τελειώνει με "world" για τους πρώτους 11 χαρακτήρες:

let text = "Hello world, welcome to the universe.";
text.endsWith("world", 11)    // Επιστρέφει true

Δοκιμάστε το προσωπικά

Σημείωση:endsWith() Μέθοδος διαφοροποίησης κεφαλαίων και μικρών γραμμάτων.

Ο Internet Explorer δεν υποστηρίζει endsWith() Μέθοδος.

Η πρώτη έκδοση του προγράμματος περιήγησης που υποστηρίζει αυτή τη μέθοδο είναι:

Chrome IE Firefox Safari Opera
Chrome 51 Edge 15 Firefox 54 Safari 10 Opera 38
Μάιος 2016 Απρίλιος 2017 Ιούνιος 2017 Σεπτέμβριος 2016 Ιούνιος 2016

Πλήρες έγγραφο αναφοράς string

Για πλήρη αναφορά, παρακαλώ επισκεφθείτε το πλήρες JavaScript string χειροκίνητο.

Το έγγραφο αυτό περιλαμβάνει περιγραφή και παράδειγμα όλων των ιδιοτήτων και μεθόδων των string.