NEWS
string.search "*" Snytax
-
Ich habe ein syntax Problem.
Wie suche in einem String das Zeichen "*"var S = "ABCD*EF"; console.log(S.search("*"));
liefert:
21:22:41.500 error javascript.0 (19737) script.js.Programmieren.Strings.Pos: SyntaxError: Invalid regular expression: /*/: Nothing to repeat
-
Hast du mal
indexOf
probiert. -
@wolfgangfb
Wenn du Befehle suchst dann ist die folgende Doku die Referenz
Hier der link zu den wichtigsten Top Level objects von JavaScript
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects?retiredLocale=deDa du etwas mit Text suchst würdest du hier im string Objekt schauen was da alles für Befehle zur Verfügung stehen.
Hier würde neben indexOf auch noch andere Befehle zur Verfügung stehen (includes, Match, search). Zur richtigen Anwendung musst du die Beschreibung sehr genau lesen. Nach einer Weile weiß man aber auf welche Schlüsselbegriffe man achten muss.
Dein search funktioniert nicht, da du als Parameter keine gültigen regulären Ausdruck übergeben hast. Steht auch so in deiner Fehlermeldung. Reguläre Ausdrücke ist nochmal eine sehr große komplizierte Welt die du erstmal auslassen solltest. Aber damit kannst du nach sehr komplexen Mustern in großen Texten suchen. Für diesen anwendungsfälle sollte indexOf oder includes ausreichen.Über Bibliotheken kann man den Funktionsumfang natürlich erheblich erweitern
Da sucht man dann bei npm
https://www.npmjs.com/ -
@oliverio
Danke Euch beiden.
Ich habe eben zuerst nach "Zeichen in String suchen" gegoogelt und bin auf search gestoßen. Das hat mit allem bis auf "*" auch wunderbar funktioniert.
Ist die Mozilla Seite sozusagen die Javascript Referenz oder kann es sein, dass die IO-Broker javascript Implementierung davon abweicht? -
@wolfgangfb sagte: kann es sein, dass die IO-Broker javascript Implementierung davon abweicht?
Nein, Node.js hält sich an die Standards. ioBroker bietet lediglich zusätzliche Funktionen.
-
@wolfgangfb
Für den eigentlichen JavaScript Standard kannst du da schauen.
Node ist ja nix anderes wie die JavaScript Engine aus dem chrome/edge Browser.
Allerdings wurden da ein paar Dinge erweitert (bspw Datenzugriff) was im Browser aus Sicherheitsgründen nicht erlaubt ist und ein paar Dinge weg gelassen, was aus Node Sicht keinen Sinn macht (Zugriff auf Browser und html Zugriff)Me Ende der einzelnen Seite steht immer die kompatibilitätsübersicht,
Welches der Funktionen in welcher Version verfügbar ist. Auch JavaScript entwickelt sich weiter.
Für die extra Funktionen von Node muss man allerdings dann direkt bei Node schauen
https://nodejs.org/dist/latest-v18.x/docs/api/
Die Struktur der Doku mag ich allerdings nicht so gerne und schau lieber erstmal wonders