Maison >interface Web >js tutoriel >Définition d'expressions régulières avant et arrière JS et exemples d'utilisation

Définition d'expressions régulières avant et arrière JS et exemples d'utilisation

高洛峰
高洛峰original
2017-01-09 15:46:311173parcourir

Les exemples de cet article décrivent la définition et l'utilisation des expressions régulières de prospective JS. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

Définition

x(?=y) correspond à 'x' uniquement lorsque 'x' est suivi de 'y'. s'appelle affirmation positive Trouver.

Par exemple, /Jack(?=Sprat)/ correspondra à 'Jack' uniquement s'il est suivi de 'Sprat'. /Jack(?=Sprat|Frost)/ correspond à 'Jack' uniquement s'il est suivi de 'Sprat' ou 'Frost'. Mais ni « Sprat » ni « Frost » ne font partie du match.

x(?!y) correspond à « x » uniquement lorsque « x » n'est pas suivi de « y ». C'est ce qu'on appelle la recherche négative directe.

Par exemple, /d (?!.)/ correspond à un nombre uniquement si le nombre n'est pas suivi d'un point décimal. L'expression régulière /d (?!.)/.exec("3.141") correspond à '141' mais pas à '3.141'

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

Exemple :

<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>

J'espère que cet article sera utile à tout le monde dans la programmation JavaScript.

Pour plus d'articles liés aux définitions d'expressions régulières prospectives JS et à des exemples d'utilisation, veuillez prêter attention au site Web PHP chinois !


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn