Έχω
var id="ctl03_Tabs1";
Χρησιμοποιώντας JavaScript, πώς θα μπορούσα να πάρω τους πέντε τελευταίους χαρακτήρες ή τον τελευταίο χαρακτήρα;
ΕΠΙΣΗΓΗΣΗ: Όπως έχουν επισημάνει άλλοι, χρησιμοποιήστε slice(-5)
αντί για `substr. Ωστόσο, δείτε τη λύση .split().pop()
στο κάτω μέρος αυτής της απάντησης για μια άλλη προσέγγιση.
Αρχική απάντηση:
Θα πρέπει να χρησιμοποιήσετε τη μέθοδο συμβολοσειρών της Javascript .substr()
σε συνδυασμό με την ιδιότητα .length
.
var id = "ctl03_Tabs1";
var lastFive = id.substr(id.length - 5); // => "Tabs1"
var lastChar = id.substr(id.length - 1); // => "1"
Αυτό παίρνει τους χαρακτήρες ξεκινώντας από το id.length - 5 και, καθώς το δεύτερο όρισμα για την .substr() παραλείπεται, συνεχίζει μέχρι το τέλος της συμβολοσειράς.
Μπορείτε επίσης να χρησιμοποιήσετε τη μέθοδο .slice()
όπως έχουν επισημάνει άλλοι παρακάτω.
Αν ψάχνετε απλώς να βρείτε τους χαρακτήρες μετά την υπογράμμιση, μπορείτε να χρησιμοποιήσετε αυτό:
var tabId = id.split("_").pop(); // => "Tabs1"
Αυτό χωρίζει τη συμβολοσειρά σε έναν πίνακα στην κάτω παύλα και στη συνέχεια "ανασύρει" το τελευταίο στοιχείο από τον πίνακα (το οποίο είναι η συμβολοσειρά που θέλετε).
Η λήψη του τελευταίου χαρακτήρα είναι εύκολη, καθώς μπορείτε να χειριστείτε τις συμβολοσειρές ως πίνακα:
var lastChar = id[id.length - 1];
Για να λάβετε ένα τμήμα μιας συμβολοσειράς, μπορείτε να χρησιμοποιήσετε τη συνάρτηση substr ή τη συνάρτηση substring:
id.substr(id.length - 1); //get the last character
id.substr(2); //get the characters from the 3rd character on
id.substr(2, 1); //get the 3rd character
id.substr(2, 2); //get the 3rd and 4th characters
Η διαφορά μεταξύ της substr
και της substring
είναι ο τρόπος με τον οποίο αντιμετωπίζεται η δεύτερη (προαιρετική) παράμετρος. Στην substr
, είναι η ποσότητα των χαρακτήρων από το δείκτη (η πρώτη παράμετρος). Στο substring
, είναι ο δείκτης του σημείου όπου πρέπει να τελειώσει η τεμαχισμός των χαρακτήρων.