Heim  >  Artikel  >  Web-Frontend  >  Beispiele für die Definition und Verwendung regulärer JS-Vorwärts- und Rückwärtsausdrücke

Beispiele für die Definition und Verwendung regulärer JS-Vorwärts- und Rückwärtsausdrücke

高洛峰
高洛峰Original
2017-01-09 15:46:311148Durchsuche

Die Beispiele in diesem Artikel beschreiben die Definition und Verwendung von regulären JS-Forward-Lookback-Ausdrücken. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

Definition

x(?=y) stimmt nur mit „x“ überein, wenn auf „x“ „y“ folgt heißt positiver Affirmationsfund.

Zum Beispiel stimmt /Jack(?=Sprat)/ nur mit „Jack“ überein, wenn ihm „Sprat“ folgt. /Jack(?=Sprat|Frost)/ stimmt nur mit „Jack“ überein, wenn ihm „Sprat“ oder „Frost“ folgt. Aber weder „Sprat“ noch „Frost“ sind Teil des Spiels.

x(?!y) stimmt nur mit „x“ überein, wenn auf „x“ kein „y“ folgt. Dies wird als negative Vorwärtssuche bezeichnet.

Zum Beispiel stimmt /d+(?!.)/ nur dann mit einer Zahl überein, wenn auf die Zahl kein Dezimalpunkt folgt. Regulärer Ausdruck /d+(?!.)/.exec("3.141") entspricht '141', aber nicht '3.141'

form https://developer.mozilla.org/zh-CN/docs/ Web /JavaScript/Guide/Regular_Expressions

Beispiel:

<html>
<head> 
</head> 
<body>
  <input id="test" type="text" value="" />
  <input id="test" type="text" value="" />
  <input id="test" type="text" value="" />
  <input id="test" type="text" value="" />
  <input id="test" type="text" value="" />
  <script>
  var testStr = "windows 95"
  /* 1 - 不带子表达式匹配 */
  var testReg = /^windows .*$/
  var result = testStr.match(testReg);
  console.log("/^windows .*$/="+result) // /^windows .*$/=windows 95
  /* 2 - 带子表达式匹配 */
  var testReg = /^windows (.*)$/
  var result = testStr.match(testReg);
  console.log("/^windows (.*)$/="+result) // /^windows (.*)$/=windows 95,95
  /* 3 - 带子表达式,不记录其匹配结果 */
  var testReg = /^windows (?:.*)$/
  var result = testStr.match(testReg);
  console.log("/^windows (?:.*)$/="+result) // /^windows (?:.*)$/=windows 95
  /* 4 - 前瞻匹配,匹配位置,正匹配 */
  var testReg = /^windows (?=95)95$/
  var result = testStr.match(testReg);
  console.log("/^windows (?=.*)$/="+result) // /^windows (?=.*)$/=windows 95
  /* 5 - 前瞻匹配,匹配位置,负匹配 */
  var testStr = "windows me"
  var testReg = /^windows (?!95)me$/
  var result = testStr.match(testReg);
  console.log("/^windows (?!\d*)$/="+result) // /^windows (?!d*)$/=windows me
  </script>
</body>
</html>

Ich hoffe, dieser Artikel wird für alle hilfreich sein, die sich mit JavaScript-Programmierung befassen.

Weitere Artikel zu Definitionen und Verwendungsbeispielen für reguläre JS-Forward-Lookback-Ausdrücke finden Sie auf der chinesischen PHP-Website!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn