Selles artiklis kirjeldatakse Microsoft Exceli funktsioonide SEARCH ja SEARCHB valemisüntakseid ja kasutamist.
Kirjeldus
Funktsioonid SEARCH ja SEARCHB leiavad ühe tekstistringi teise tekstistringi seest ja tagastavad esimese tekstistringi alguspositsiooni numbri alates teise tekstistringi esimesest märgist. Näiteks n-tähe asukoha leidmiseks sõnas "printer" saate kasutada järgmist funktsiooni.
=SEARCH("n";"printer")
See valem tagastab arvu 4, kuna "n" on neljas märk sõnas "printer".
Soovi korral saate ka otsida sõnu, mis moodustavad osa mõnest muust sõnast. Näiteks valem
=SEARCH("baas";"andmebaas")
tagastab väärtuse 6, kuna sõna "baas" algab sõna "andmebaas" kuuendast märgist. Funktsioonide SEARCH ja SEARCHB abil saate tuvastada mõne kindla märgi või tekstistringi asukoha mõnes teises tekstistringis; seejärel saate kasutada funktsiooni MID või MIDB soovitud teksti tagastamiseks või funktsiooni REPLACE või REPLACEB teksti muutmiseks. Neid funktsioone on kirjeldatud käesoleva artikli näites 1.
NB!:
-
Need funktsioonid ei pruugi olla kõigis keeltes saadaval.
-
SEARCHB loendab 2 baiti märgi kohta ainult siis, kui vaikekeeleks on seatud kahebaidise märgistikuga (DBCS) keel. Muul juhul käitub SEARCHB sarnaselt funktsiooniga SEARCH, loendades 1 baidi märgi kohta.
Kahebaidist märgistikku (DBCS) toetavad keeled on jaapani keel, lihtsustatud hiina keel, traditsiooniline hiina keel ja korea keel.
Süntaks
SEARCH(otsitav_tekst;teksti_seest;[algusnr])
SEARCHB(otsitav_tekst;teksti_seest;[algusnr])
Funktsioonide SEARCH ja SEARCHB süntaksitel on järgmised atribuudid.
-
Otsitav_tekst – nõutav. Tekst, mida soovite leida.
-
Teksti_seest – nõutav. Tekst, millest soovite otsida argumendi otsitav_tekst väärtust.
-
Algusnr – valikuline. Märginumber argumendis teksti_seest, millest alates soovite otsida.
Kommentaar
-
Funktsioonid SEARCH ja SEARCHB pole tõstutundlikud. Kui soovite kasutada tõstutundlikku otsingut, kasutage funktsioone FIND ja FINDB.
-
Argumendis otsitav_tekst saate kasutada metamärke – küsimärki (?) ja tärni (*). Küsimärk vastab suvalisele üksikmärgile, tärn aga suvalisele märgijadale. Kui tegelikult soovitegi küsimärki või tärni, tippige otsitava märgi ette tilde (~).
-
Kui find_text väärtust ei leita, #VALUE! tagastatakse väärtus.
-
Kui argument algusnr puudub, eeldatakse, et see on 1.
-
Kui start_num pole suurem kui 0 (null) või suurem kui argumendi within_text pikkus, #VALUE! tagastatakse väärtus.
-
Kasutage argumenti algusnr määratud arvu märkide vahelejätmiseks. Oletagem, et soovite kasutada funktsiooni SEARCH ja töötate tekstistringiga "ANF0093.NoormeesteRiided". Tekstistringi kirjeldavast osast esimese märgi "N" positsiooni leidmiseks määrake argumendi algusnr väärtuseks 8 – sel juhul ei kaasata otsingusse teksti seerianumbri osa (käesolevas näites "ANF0093"). Funktsioon SEARCH alustab otsingut kaheksandast märgipositsioonist, leiab järgmisel positsioonil märgi, mis on määratud argumendiga otsitav_tekst, ja tagastab arvu 9. Funktsioon SEARCH tagastab alati märkide arvu alates argumendi teksti_seest algusest, loendades vahelejäetavad märgid juhul, kui argument algusnr on suurem kui 1.
Näited
Kopeerige järgmise tabeli näidisandmed ja kleepige need uue Exceli töövihiku lahtrisse A1. Selleks et valemid näitaksid tulemeid, valige need, vajutage klahvi F2 ja seejärel vajutage sisestusklahvi (Enter). Vajaduse korral saate kogu teabe kuvamiseks veerulaiust muuta.
Andmed |
||
---|---|---|
Väljavõtted |
||
Kasum (bruto) |
||
bruto |
||
Suur "boss" on siin. |
||
Valem |
Kirjeldus |
Tulem |
=SEARCH("t";A2;7) |
Esimese "t" asukoht lahtris A2 asuvas stringis, alates seitsmendast positsioonist. |
7 |
=SEARCH(A4;A3) |
Stringi "bruto" (stringi, mida otsida lahtrist A4) positsioon stringis "Kasum (bruto)" (lahter, kust otsida, on A3). |
8 |
=REPLACE(A3;SEARCH(A4;A3);5;"neto") |
Asendab "bruto" stringiga "neto": esmalt leitakse stringi "bruto" positsioon lahtris A3 ning seejärel asendatakse see märk ja neli järgmist märki stringiga "neto". |
Kasum (neto) |
=MID(A3;SEARCH(" ";A3)+1;4) |
Tagastab esimesed neli märki, mis järgnevad esimesele tühikumärgile stringis "Kasum (bruto)" (lahter A3). |
(bru |
=SEARCH("""";A5) |
Esimese topeltjutumärgi (") positsioon lahtris A5. |
5 |
=MID(A5;SEARCH("""";A5)+1;SEARCH("""";A5;SEARCH("""";A5)+1)-SEARCH("""";A5)-1) |
Tagastab ainult lahtris A5 topeltjutumärkides oleva teksti. |
boss |