Κοινή χρήση μέσω


SEARCH

Ισχύει για:Υπολογιζόμενη στήληΥπολογιζόμενος πίνακαςΜέτρηση υπολογισμού απεικόνισης

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

Σύνταξη

SEARCH(<find_text>, <within_text>[, [<start_num>][, <NotFoundValue>]])

Παράμετροι

Όρος Ορισμός
find_text Το κείμενο που θέλετε να βρείτε.

Μπορείτε να χρησιμοποιήσετε χαρακτήρες μπαλαντέρ — το ερωτηματικό (?) και τον αστερίσκο (*) — σε find_text. Ένα ερωτηματικό συμφωνεί με οποιονδήποτε μεμονωμένο χαρακτήρα. ένας αστερίσκος αντιστοιχεί σε οποιαδήποτε αλληλουχία χαρακτήρων. Εάν θέλετε να βρείτε ένα πραγματικό ερωτηματικό ή αστερίσκο, πληκτρολογήστε μια περισπωμένων (~) πριν από τον χαρακτήρα.
within_text Το κείμενο στο οποίο θέλετε να κάνετε αναζήτηση για find_textή μια στήλη που περιέχει κείμενο.
start_num (προαιρετικό) Η θέση χαρακτήρα στο within_text από την οποία θέλετε να ξεκινήσετε την αναζήτηση. Εάν παραλειφθεί, 1.
NotFoundValue (προαιρετικό, αλλά συνιστάται ιδιαίτερα) Η τιμή που πρέπει να επιστραφεί όταν η λειτουργία δεν βρει μια αντίστοιχη δευτερεύουσα συμβολοσειρά, συνήθως 0, -1 ή BLANK(). Εάν δεν καθοριστεί, επιστρέφεται σφάλμα.

Τιμή επιστροφής

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

Παρατηρήσεις

  • Η συνάρτηση αναζήτησης δεν κάνει διάκριση πεζών-κεφαλαίων. Η αναζήτηση για "N" θα βρει την πρώτη εμφάνιση των "N" ή "n".

  • Η συνάρτηση αναζήτησης κάνει διάκριση χαρακτήρων με τόνους. Η αναζήτηση για "α" θα βρει την πρώτη εμφάνιση του "α", αλλά όχι τις εμφανίσεις του "α", του "ά" ή τις κεφαλαιοποιημένες εκδόσεις "Α", "Ά".

  • Μπορείτε να χρησιμοποιήσετε τη συνάρτηση SEARCH για να προσδιορίσετε τη θέση ενός χαρακτήρα ή μιας συμβολοσειράς κειμένου μέσα σε μια άλλη συμβολοσειρά κειμένου και, στη συνέχεια, να χρησιμοποιήσετε τη συνάρτηση MID για να επιστρέψετε το κείμενο ή να χρησιμοποιήσετε τη συνάρτηση REPLACE για να αλλάξετε το κείμενο.

  • Εάν δεν είναι δυνατή η find_text στο within_text, ο τύπος επιστρέφει σφάλμα. Αυτή η συμπεριφορά μοιάζει με εκείνη του Excel, το οποίο επιστρέφει #VALUE εάν δεν βρεθεί η δευτερεύουσα συμβολοσειρά. Οι τιμές null σε within_text θα ερμηνευτούν ως κενή συμβολοσειρά σε αυτό το περιβάλλον.

  • Αυτή η συνάρτηση δεν υποστηρίζεται για χρήση σε λειτουργία DirectQuery όταν χρησιμοποιείται σε υπολογιζόμενες στήλες ή σε κανόνες ασφάλειας σε επίπεδο γραμμών (RLS).

Παράδειγμα

Η ακόλουθη DAX ερώτημα εντοπίζει τη θέση του πρώτου γράμματος του "κύκλου", στη συμβολοσειρά που περιέχει το όνομα του μεταπωλητή. Εάν δεν βρεθεί, επιστρέφεται κενό.

SEARCH δεν κάνει διάκριση πεζών-κεφαλαίων. Σε αυτό το παράδειγμα, εάν χρησιμοποιείται το "cycle" ή το "Cycle" στο όρισμα find_text, επιστρέφονται αποτελέσματα και για τις δύο περιπτώσεις. Χρησιμοποιήστε FIND για διάκριση πεζών-κεφαλαίων.

Παραδείγματα σε αυτό το άρθρο μπορούν να χρησιμοποιηθούν με το δείγμα μοντέλου Adventure Works DW 2020 Power BI Desktop. Για να λάβετε το μοντέλο, ανατρέξτε DAX δείγμαμοντέλου .

EVALUATE
CALCULATETABLE (
    ADDCOLUMNS (
        TOPN ( 10, SUMMARIZE('Reseller', [Reseller], [Business Type])),
        "Position of cycle", SEARCH ( "cycle", 'Reseller'[Reseller], 1, BLANK () )
    ),
    'Reseller'[Business Type] IN { "Specialty Bike Shop", "Value Added Reseller", "Warehouse"}
)

Επιστρέφει

Reseller Είδος επιχείρησης Θέση κύκλου
Πωλητές ποδηλάτων όγκου Αποθήκη
Ποδήλατα μαζικής αγοράς Μεταπωλητής προστιθέμενης αξίας
Δίδυμοι κύκλοι Μεταπωλητής προστιθέμενης αξίας 6
Εμπλουτισμένο πολυκατάστημα Αποθήκη
Συλλογή ενοικίασης Εξειδικευμένο κατάστημα ποδηλάτων
Budget Toy Store Αποθήκη
Παγκόσμιο Αθλητικό Κατάστημα Αποθήκη
Online Bike Catalog Αποθήκη
Helmets and Cycles Μεταπωλητής προστιθέμενης αξίας 13
Τεράστια ποδήλατα Εξειδικευμένο κατάστημα ποδηλάτων

FIND REPLACE συναρτήσεων κειμένου