JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

【JavaScript】正規表現でN個の連続した文字に一致させる方法({N}数量詞の使い方)

JavaScript RegExpでN個の連続文字に一致させるには

JavaScriptの正規表現(RegExp)で、ある文字がN個連続して並ぶ文字列に一致させたい場合は、数量詞 {N} を使用します。たとえば「p」が3個続くパターンなら p{3}、3桁の数字なら \d{3} のように記述します。

{N} 数量詞の基本

{N} は、直前の要素をちょうどN回繰り返すパターンに一致させる数量詞です。以下のような使い方ができます。

  • p{3} … 「p」が3個連続する部分に一致
  • \d{3} … 3桁の連続する数字に一致
  • a{5} … 「a」が5個連続する部分に一致

サンプルコード

次のコードは、文字列の中から3桁の数字(\d{3})に一致する部分をすべて抽出する例です。

<html>
<head>
<title>JavaScript Regular Expression</title>
</head>

<body>
<script>
var myStr = "Welcome 1, 100, 10000, 1000";
var reg = /\d{3}/g;
var match = myStr.match(reg);

document.write(match);
</script>
</body>
</html>

実行結果

match() メソッドにグローバルフラグ(g)を付けると、一致したすべての箇所が配列として返されます。上記コードの実行結果は次のとおりです。

100,100,100

このように {N} 数量詞を使うことで、「特定の文字や数字がN個並んでいる箇所」だけを簡単に取り出すことができます。桁数が異なる複数のパターンに対応したい場合は、範囲指定ができる {min,max} を併用するとより柔軟なマッチングが可能です。

  1. HTMLのvarタグとは?数式の変数を表示する使い方とサンプルコード

    HTMLの<var>要素は、数式や計算式の中で使われる変数(variable)を表すために使用されます。<var>タグで囲まれたテキストは、多くのブラウザでイタリック体(斜体)として表示されるのが特徴です。 それでは、実際に<var>タグをHTMLで実装する例を見ていきましょう。 サンプルコード <!DOCTYPE html> <html> <body> <h2>Mathematical Equation</h2> <p>Sample equation: <var>2x&l

  2. Pythonで複数の文字列のいずれかが別の文字列に含まれているか判定する方法

    Pythonでは、リスト内の複数の文字列のうち、どれか1つでも別の文字列に含まれているかどうかを調べたい場面がよくあります。そんなときに便利なのが、組み込み関数 any() を使った方法です。 any() 関数を使う基本的な方法 any() は、引数に渡したイテラブルの中に真と評価される要素が1つでもあれば True を返します。ジェネレータ式と組み合わせることで、各文字列が対象の文字列に含まれているかを簡潔に判定できます。 例 arr = [a, e, i, o, u] text = hello people if any(c in text for c in arr):