Reguläre Ausdrücke in js (1)
Die Bedeutung des Zeichens
wird verwendet, um die Bedeutung zu ändern, d Wird vor b, /b/ hinzugefügt, lautet die geänderte Bedeutung „Entspricht einer Wortgrenze“. -oder- Wiederherstellung von Funktionszeichen für reguläre Ausdrücke, z. B. „*“, die 0-mal oder öfter mit dem Metazeichen davor übereinstimmen, /a*/ stimmt mit a, aa, aaa überein, nach dem Hinzufügen von „“ stimmt /a*/ nur mit „ überein A*". ^ entspricht einer Eingabe oder dem Anfang einer Zeile, /^a/ entspricht „an A“, aber nicht „An a“ $ entspricht einer Eingabe oder dem Ende einer Zeile, /a$/ entspricht „An a“, stimmt aber nicht mit „an A“ überein* stimmt mindestens 0 Mal mit dem vorhergehenden Metazeichen überein, /ba*/ stimmt mit b, ba, baa, baaa überein, stimmt mindestens 1 Mal mit dem vorhergehenden Metazeichen überein, /ba*/ stimmt mit ba, baa überein , baaa? stimmt 0 oder 1 Mal mit dem vorhergehenden Metazeichen überein, /ba*/ stimmt mit b überein, ba(x) stimmt mit x überein, speichert x in einer Variablen namens $1...$9, x|y stimmt mit x oder y{n überein } trifft genau n-mal zu { n,} trifft mehr als n-mal zu {n,m} trifft n-m-mal zu [xyz] Zeichensatz (Zeichensatz), entspricht jedem Zeichen (oder Metazeichen) in diesem Satz [^xyz] stimmt nicht überein Jedes Zeichen in diesem Satz. Jedes Zeichen [b] entspricht einer Rücktaste, b entspricht einer Wortgrenze, B entspricht einer Nicht-Wortgrenze, cX. Hier ist X ein Steuerzeichen, /cM/ entspricht Strg-Md, entspricht einem alphanumerischen Zeichen, /d/ = /[0-9]/D entspricht einem nicht-alphanumerischen Zeichen, /D/ = /[^0-9]/n entspricht einem Zeilenumbruchzeichen, r entspricht einem Wagenrücklaufzeichen, s entspricht einem Leerzeichen, einschließlich n, r, f , t , v und andere S stimmen mit einem Nicht-Leerzeichen überein, das gleich /[^nfrtv]/t ist, mit einem Tabulatorzeichen übereinstimmt v mit einem geraden Tabulatorzeichen übereinstimmt w mit einem Zeichen übereinstimmt, das ein Wort bilden kann (alphanumerisch, das ist mein freie Übersetzung, einschließlich Zahlen ), einschließlich Unterstrichen, wie z. B. [w] passend zur 5 in „$5,98“, gleich [a-zA-Z0-9] W passend zu einem Zeichen, das kein Wort bilden kann, wie z. B. [W] passend das $ in „$5,98“, gleich [^a-zA-Z0-9].
Es ist besser, re = new RegExp("pattern",["flags"]) zu verwenden
pattern: regulärer Ausdruck
flags: g (alle Vorkommen von Muster im Volltext durchsuchen)
i (Groß- und Kleinschreibung ignorieren)
m (mehrzeilige Suche) Frage zu dynamischen regulären JavaScript-Ausdrücken Können reguläre Ausdrücke dynamisch generiert werden?
Zum Beispiel in JavaScript:
var str = "strTemp";
Zum Generieren:
var re = /strTemp/;
Wenn es sich um eine Zeichenverbindung handelt:
var re = "/" str "/" reicht
Aber um einen Ausdruck zu generieren, ist ist es möglich? Wie implementiert man?
Ein regulärer Ausdruck ist ein Objekt, das ein Zeichenmuster beschreibt.
Das RegExp-Objekt und das String-Objekt von JavaScript definieren Methoden zur Verwendung regulärer Ausdrücke, um leistungsstarke Mustervergleichs- und Textabruf- und Ersetzungsfunktionen auszuführen.
In JavaScript werden reguläre Ausdrücke dargestellt durch ein RegExp-Objekt. Natürlich können Sie einen RegExp()-Konstruktor verwenden, um ein RegExp-Objekt zu erstellen.
Sie können auch eine spezielle Syntax verwenden, die in JavaScript 1.2 neu hinzugefügt wurde, genau wie Zeichen definiert als in Anführungszeichen eingeschlossene Zeichen,
reguläre Ausdrucksliterale werden als zwischen einem Schrägstrichpaar (/) eingeschlossene Zeichen definiert. JavaScript könnte also Code wie den folgenden enthalten:
var pattern = /s$/;
Diese Codezeile erstellt ein neues RegExp-Objekt und weist es dem Variablenmuster zu. Dieses spezielle RegExp-Objekt und alles, was mit dem Buchstaben „s“ beginnt, können mit RegExp() abgeglichen werden Definieren Sie auch
einen äquivalenten regulären Ausdruck. Der Code lautet wie folgt:
var pattern = new RegExp("s$");
Ob Sie ein reguläres Ausdrucksliteral oder den Konstruktor verwenden RegExp() ist relativ einfach, ein RegExp-Objekt zu erstellen. Die schwierigere Aufgabe besteht darin, die Syntax regulärer Ausdrücke zu verwenden, um das Zeichenmuster zu beschreiben.
JavaScript übernimmt Es ist eine ziemlich vollständige Teilmenge der regulären Ausdruckssyntax der Perl-Sprache 🎜>
Alle Zeichenfolgen, die den Teilstring „java“ enthalten, werden zwar nicht wörtlich zugeordnet, aber sie haben alle eine besondere Bedeutung. Der reguläre Ausdruck /s$/ enthält zwei Zeichen. s“ stimmt wörtlich mit sich selbst überein. Das zweite Zeichen „$“ ist ein Sonderzeichen, das dem Ende der Zeichenfolge entspricht. Der reguläre Ausdruck /s$/ entspricht also der Zeichenfolge, die mit dem Buchstaben „s“ endet
.
1. Direkte Zeichen
Wir haben festgestellt, dass alle alphabetischen Zeichen und Zahlen in regulären Ausdrücken auch durch Escape-Sequenzen unterstützt werden, die mit einem Backslash () beginnen. Bestimmte Nicht-
alphabetische Zeichen. Die Sequenz „n“ entspricht beispielsweise einem wörtlichen Zeilenumbruchzeichen in der Zeichenfolge. In regulären Ausdrücken haben viele Satzzeichen eine besondere Bedeutung:
Wörtliche Zeichen von reguläre Ausdrücke
Zeichenübereinstimmung
____________________________
Alphanumerisches Zeichen selbst
f Seitenvorschubzeichen
n Zeilenvorschubzeichen
r Wagenrücklauf
t Tabulatorzeichen
v vertikales Tabulatorzeichen
/ a/ direkte Menge
* a * direkte Menge
? eine direkte Menge
|
( a ( direkte Menge
) a ) direkte Menge
[ a [ direkte Menge
] a ] direkte Menge
{ a { direkte Menge
} a } direkte Menge
XXX Das durch die Dezimalzahl XXX angegebene ASCII-Codezeichen
n
_____________________________________________________
Wenn Sie spezielle Satzzeichen in regulären Ausdrücken verwenden möchten, müssen Sie ihnen ein „“ voranstellen.
2. Zeichenklasse
Setzen Sie einzelne direkte Zeichen in eckige Klammern, um Zeichenklassen zu bilden, sodass der reguläre Ausdruck / [abc] / und die Buchstaben „ a“, „Jedes
in b“ oder „c“ wird übereinstimmen. Darüber hinaus können Sie auch negative Zeichenklassen definieren, die mit allen Zeichen außer den in eckigen Klammern enthaltenen Zeichen übereinstimmen. Beim Definieren des negativen Zeichentipps: Zu verwenden ein ^-Symbol alstes Zeichen, beginnend mit der linken Klammer. Der Satz regulärer Ausdrücke ist / [a-zA-z0-9] / .
Da einige Zeichenklassen sehr häufig verwendet werden, so Die reguläre Ausdruckssyntax von JavaScript enthält einige Sonderzeichen und Escape-Sequenzen, um diese häufig verwendeten Klassen darzustellen. Beispielsweise entspricht s Leerzeichen, Tabulatoren und anderen Leerzeichen, und s
entspricht allen anderen Zeichen als den Zeichen
Zeichenübereinstimmungen
[...] Alle Zeichen in Klammern
[^...] Alle Zeichen, die nicht in Klammern stehen außer Zeilenumbruch, äquivalent zu [^n]
w Jedes einzelne Zeichen, äquivalent zu [a-zA-Z0 -9]
W Jedes nicht-einzelne Zeichen, äquivalent zu [^a-zA-Z0-9 ]
s Jedes Leerzeichen, äquivalent zu [t n r f v]
S Jedes Nicht-Leerzeichen, äquivalent in [^ t n r f v]
d jede Zahl entspricht [0-9]
D jedes Zeichen Anders als Zahlen entspricht [^0-9]
[b] einer Rücktaste. Direkte Menge (Sonderfall)
______________________________________________________________
3. Unter Verwendung der obigen regulären Tabelle Syntax: Zweistellige Zahlen können als / d d / und vierstellige Zahlen als / d d d d / beschrieben werden. Wir haben jedoch noch keine Möglichkeit, eine Zahl mit einer beliebigen Anzahl von Ziffern oder einem
zu beschreiben
Zeichenfolge. Diese Zeichenfolge besteht aus drei Zeichen und einer Ziffer nach dem Buchstaben. Diese komplexen Muster verwenden eine reguläre Ausdruckssyntax, die angibt, wie oft jedes Element im Ausdruck wiederholt werden soll Zeichen erscheinen immer nach dem Muster, nach dem sie wirken. Daher werden einige Sonderzeichen speziell für ihre Darstellung verwendet. Zum Beispiel: Das Symbol entspricht einem Muster, das das vorherige Muster einmal kopiert >
______________________________________________________________________________________
{n, m} stimmt mindestens n-mal mit dem vorherigen Element überein, darf jedoch nicht mehr als m-mal übereinstimmen.{n, } stimmt n-mal oder mehrmals mit dem vorherigen Element überein.
{n} stimmt mit dem vorherigen Element überein genau n-mal? Passt 0 oder 1 Mal zum vorherigen Element, das heißt, das vorherige Element ist äquivalent zu {0, 1}
, das 1 oder mehr Mal mit dem vorherigen Element übereinstimmt entspricht {1,}* entspricht dem vorherigen Element 0 oder mehr Mal. Entspricht {0,}
4 Die Syntax regulärer Ausdrücke umfasst auch die Angabe von Auswahlelementen sowie das Gruppieren und Referenzieren von Unterausdrücken. Das Sonderzeichen | wird zum Trennen der Zeichen für die Auswahl verwendet. Beispiel: /ab|cd|ef/ entspricht der Zeichenfolge „ab“. ", oder die
Zeichenfolge "cd" oder "ef". /d{3}|[a-z]{4}/ entspricht entweder einer dreistelligen Zahl oder vier Kleinbuchstaben. Klammern haben mehrere Funktionen in Reguläre Ausdrücke. Die Hauptfunktion besteht darin, einzelne Elemente
in Unterausdrücke zu gruppieren, sodass diese Elemente wie eine unabhängige Einheit mit * oder ? verarbeitet werden können. Beispiel: /java(script) ?/ entspricht The Auf die Zeichenfolge „java“ kann „script“ folgen oder auch nicht. /
(ab|cd) |ef) / Entspricht entweder der Zeichenfolge „ef“ oder einem Zeichen. Eine oder mehrere Wiederholungen der Zeichenfolge „ab " oder "cd".
In regulären Ausdrücken besteht die zweite Verwendung von Klammern darin, Untermuster innerhalb des vollständigen Musters zu definieren. Wenn ein regulärer Ausdruck erfolgreich mit der Zielzeichenfolge übereinstimmt, kann er aus der Zielzeichenfolge extrahiert werden, um dem Untermuster in Klammern
zu entsprechenAngenommen, das Muster, das wir abrufen, besteht aus einem oder mehreren Buchstaben, gefolgt von einer oder mehreren Ziffern, dann können wir das Muster /[a-z]d/ verwenden Wichtig ist, dass jeder mit den Ziffern am Ende von
Zum Beispiel: Im folgenden regulären Ausdruck wird er als 2 angegeben:
/([Jj ]ava([Ss]cript)) sis s (funw*) /
/[' "] [^ ' "]*[' "]/
/( [' " ] ) [^ ' "] * 1/
有关正则表达式的语法还有最后一个元素,那就是正则表达式的属性,它说明的是高级模式匹配的规则.和其它正则表达式语法不同,属性是在 / 符号之外说明的.即它
们不出现在两个斜杠之间,而是位于第二个斜杠之后.javascript 1.2支持两个属性.属性 i 说明模式匹配应该是大小写不敏感的.属性 g 说明模式匹配应该是全局的.也
就是说,应该找出被检索的字符串中所有的匹配.这两种属性联合起来就可以执行一个全局的,大小写不敏感的匹配.
例如: 要执行一个大小不敏感的检索以找到词语 "java" (或者是 "java" 、"JAVA"等) 的第一个具体值,我们可以使用大小不敏感的正则表达式 /\b java\b/i .如果要在
一个字符串中找到 "java" 所有的具体值,我们还可以添加属性 g, 即 /\b java \b/gi .
以下是正则表达式的属性:
字符 含义
_________________________________________
i 执行大小写不敏感的匹配
g 执行一个全局的匹配,简而言之,就是找到所有的匹配,而不是在找到第一个之后就停止了
_________________________________________
除属性 g 和 i 之外,正则表达式就没有其它像属性一样的特性了.如果将构造函数 RegExp 的静态属性 multiline 设置为 true ,那么模式匹配将以多行的模式进行.在这
种模式下,锚字符 ^ 和 $ 匹配的不只是检索字符串的开头和结尾,还匹配检索字符串内部的一行的开头和结尾.例如: 模式 /Java$/ 匹配的是 "Java",但是并不匹配
"Java\nis fun" .如果我们设置了 multiline 属性,那么后者也将被匹配:
RegExp.multiline = true;在JAVASCRIPT里面判断一个字符串是否是电子邮件的格式:if(formname.email.value!=formname.email.value.match(/^\w +[@]\w +[.][\w.] +$/)){alert("您的电子邮件格式错误!");formname.email.focus();return false;}
[RED]function dateVerify(date){
var reg = /^(\d{4})(-)(\d{2})\2(\d{2})$/;
var r = date.match(reg);
if(r==null) return false;
var d= new Date(r[1], r[3]-1,r[4]);
var newStr=d.getFullYear()+r[2]+(d.getMonth()+1)+r[2]+d.getDate();
date=r[1]+r[2]+((r[3]-1)+1)+r[2]+((r[4]-1)+1);
return newStr==date;
}[/RED]
javascript的17种正则表达式
"^\\d+$" //非负整数(正整数 + 0) "^[0-9]*[1-9][0-9]*$" //正整数 "^((-\\d+)|(0+))$" //非正整数(负整数 + 0) "^-[0-9]*[1-9][0-9]*$" //负整数 "^-?\\d+$" //整数 "^\\d+(\\.\\d+)?$" //非负浮点数(正浮点数 + 0) "^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$" //正浮点数 "^((-\\d+(\\.\\d+)?)|(0+(\\.0+)?))$" //非正浮点数(负浮点数 + 0) "^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$" //负浮点数 "^(-?\\d+)(\\.\\d+)?$" //浮点数 "^[A-Za-z]+$" //由26个英文字母组成的字符串 "^[A-Z]+$" //由26个英文字母的大写组成的字符串 "^[a-z]+$" //由26个英文字母的小写组成的字符串 "^[A-Za-z0-9]+$" //由数字和26个英文字母组成的字符串 "^\\w+$" //由数字、26个英文字母或者下划线组成的字符串 "^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+$" //email地址 "^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$" //ur

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen





Überprüfung regulärer PHP-Ausdrücke: Erkennung des Zahlenformats Beim Schreiben von PHP-Programmen ist es häufig erforderlich, die vom Benutzer eingegebenen Daten zu überprüfen. Eine der häufigsten Überprüfungen besteht darin, zu überprüfen, ob die Daten dem angegebenen Zahlenformat entsprechen. In PHP können Sie reguläre Ausdrücke verwenden, um diese Art der Validierung zu erreichen. In diesem Artikel wird erläutert, wie Sie mithilfe regulärer PHP-Ausdrücke Zahlenformate überprüfen und spezifische Codebeispiele bereitstellen. Schauen wir uns zunächst die allgemeinen Validierungsanforderungen für Zahlenformate an: Ganzzahlen: enthalten nur die Zahlen 0–9, können mit einem Plus- oder Minuszeichen beginnen und enthalten keine Dezimalstellen. Gleitkomma

Um E-Mail-Adressen in Golang mithilfe regulärer Ausdrücke zu validieren, führen Sie die folgenden Schritte aus: Verwenden Sie regexp.MustCompile, um ein reguläres Ausdrucksmuster zu erstellen, das gültigen E-Mail-Adressformaten entspricht. Verwenden Sie die MatchString-Funktion, um zu überprüfen, ob eine Zeichenfolge mit einem Muster übereinstimmt. Dieses Muster deckt die meisten gültigen E-Mail-Adressformate ab, einschließlich: Lokale Benutzernamen können Buchstaben, Zahlen und Sonderzeichen enthalten: !.#$%&'*+/=?^_{|}~-`Domänennamen müssen mindestens Eins enthalten Buchstabe, gefolgt von Buchstaben, Zahlen oder Bindestrichen. Die Top-Level-Domain (TLD) darf nicht länger als 63 Zeichen sein.

In Go können Sie reguläre Ausdrücke verwenden, um Zeitstempel abzugleichen: Kompilieren Sie eine Zeichenfolge mit regulären Ausdrücken, z. B. die, die zum Abgleich von ISO8601-Zeitstempeln verwendet wird: ^\d{4}-\d{2}-\d{2}T \d{ 2}:\d{2}:\d{2}(\.\d+)?(Z|[+-][0-9]{2}:[0-9]{2})$ . Verwenden Sie die Funktion regexp.MatchString, um zu überprüfen, ob eine Zeichenfolge mit einem regulären Ausdruck übereinstimmt.

JavaScript-Tutorial: So erhalten Sie HTTP-Statuscode. Es sind spezifische Codebeispiele erforderlich. Vorwort: Bei der Webentwicklung ist häufig die Dateninteraktion mit dem Server erforderlich. Bei der Kommunikation mit dem Server müssen wir häufig den zurückgegebenen HTTP-Statuscode abrufen, um festzustellen, ob der Vorgang erfolgreich ist, und die entsprechende Verarbeitung basierend auf verschiedenen Statuscodes durchführen. In diesem Artikel erfahren Sie, wie Sie mit JavaScript HTTP-Statuscodes abrufen und einige praktische Codebeispiele bereitstellen. Verwenden von XMLHttpRequest

Reguläre PHP-Ausdrücke: Exakte Übereinstimmung und Ausschluss. Reguläre Fuzzy-Inklusion-Ausdrücke sind ein leistungsstarkes Text-Matching-Tool, das Programmierern bei der effizienten Suche, Ersetzung und Filterung bei der Textverarbeitung helfen kann. In PHP werden reguläre Ausdrücke auch häufig zur Zeichenfolgenverarbeitung und zum Datenabgleich verwendet. Dieser Artikel konzentriert sich auf die Durchführung von exakten Übereinstimmungen und den Ausschluss von Fuzzy-Inklusion-Operationen in PHP und veranschaulicht dies anhand spezifischer Codebeispiele. Exakte Übereinstimmung Exakte Übereinstimmung bedeutet, dass nur Zeichenfolgen abgeglichen werden, die die genaue Bedingung erfüllen, keine Variationen oder zusätzlichen Wörter.

Die Methode zur Verwendung regulärer Ausdrücke zur Überprüfung von Passwörtern in Go lautet wie folgt: Definieren Sie ein Muster für reguläre Ausdrücke, das die Mindestanforderungen für Passwörter erfüllt: mindestens 8 Zeichen, einschließlich Kleinbuchstaben, Großbuchstaben, Zahlen und Sonderzeichen. Kompilieren Sie reguläre Ausdrucksmuster mit der MustCompile-Funktion aus dem Regexp-Paket. Verwenden Sie die MatchString-Methode, um zu testen, ob die Eingabezeichenfolge mit einem regulären Ausdrucksmuster übereinstimmt.

PHP ist eine weit verbreitete Programmiersprache, die besonders im Bereich der Webentwicklung beliebt ist. Im Prozess der Webentwicklung stoßen wir häufig auf die Notwendigkeit, die vom Benutzer eingegebenen Texte zu filtern und zu überprüfen, wobei die Zeichenfilterung ein sehr wichtiger Vorgang ist. In diesem Artikel wird erläutert, wie reguläre Ausdrücke in PHP zum Implementieren der Filterung chinesischer Zeichen verwendet werden, und es werden spezifische Codebeispiele aufgeführt. Zunächst müssen wir klarstellen, dass der Unicode-Bereich chinesischer Schriftzeichen von u4e00 bis u9fa5 reicht, d. h. alle chinesischen Schriftzeichen liegen in diesem Bereich.

Einführung in die Methode zum Abrufen des HTTP-Statuscodes in JavaScript: Bei der Front-End-Entwicklung müssen wir uns häufig mit der Interaktion mit der Back-End-Schnittstelle befassen, und der HTTP-Statuscode ist ein sehr wichtiger Teil davon. Das Verstehen und Abrufen von HTTP-Statuscodes hilft uns, die von der Schnittstelle zurückgegebenen Daten besser zu verarbeiten. In diesem Artikel wird erläutert, wie Sie mithilfe von JavaScript HTTP-Statuscodes erhalten, und es werden spezifische Codebeispiele bereitgestellt. 1. Was ist ein HTTP-Statuscode? HTTP-Statuscode bedeutet, dass der Dienst den Dienst anfordert, wenn er eine Anfrage an den Server initiiert
