JavaScript正規表現で文字列の先頭を特定のパターンと一致させる方法(^の使い方)
JavaScriptの正規表現(RegExp)を使って、文字列の先頭が特定のパターン「p」と一致するかどうかを調べたい場合は、キャレット(^)を使用します。
「^」は文字列の先頭(行頭)を表すアンカーと呼ばれる特殊文字です。たとえば「^p」と記述すると、「pで始まる文字列」にのみマッチさせることができます。
サンプルコード
以下は、正規表現「/^We/g」を使って、文字列が「We」で始まるかどうかを判定する例です。
<html>
<head>
<title>JavaScript Regular Expression</title>
</head>
<body>
<script>
var myStr = "Welcome to our website. We Learners!";
var reg = /^We/g;
var match = myStr.match(reg);
document.write(match);
</script>
</body>
</html>
コードの解説
- myStr:検索対象となる文字列を格納した変数です。
- reg:正規表現「/^We/g」を格納した変数です。「^We」は「Weで始まる」という意味を持ちます。
- match():文字列に対して正規表現を適用し、マッチした結果を配列として返すメソッドです。
- document.write():マッチ結果を画面に出力します。
実行結果
We
この例では、文字列の途中にある「We Learners!」の「We」ではなく、先頭の「Welcome」の「We」のみがマッチします。これは「^」が文字列の先頭にしかマッチしないためです。
ポイント
- 「^」を付けずに「/We/g」とした場合、文字列内のすべての「We」がマッチします。
- 末尾の「g」はグローバル検索を意味するフラグですが、「^」と組み合わせた場合は先頭にしかマッチしないため、実質1件のみの結果となります。
- 文字列の末尾を判定したい場合は、代わりに「$」を使用します。
このように「^」を活用することで、文字列が特定のパターンで始まるかどうかを簡単に判定できます。入力値のバリデーションや文字列のフィルタリングなど、さまざまな場面で役立つテクニックです。
-
Javaの正規表現で入力の先頭に一致させる方法(\Aメタ文字の使い方)
入力の先頭に一致させる方法Javaの正規表現では、メタ文字 「\A」 を使用することで、入力(文字列)の先頭に一致させることができます。「\A」は、入力の開始位置にのみ一致する境界正規表現構成要素です。\A と ^ の違い同じように先頭を表す記号として「^」がありますが、両者には以下のような違いがあります。\A:MULTILINEフラグの有無にかかわらず、常に文字列全体の先頭にのみ一致します。^:通常は文字列の先頭に一致しますが、MULTILINEモードを有効にすると各行の先頭にも一致します。サンプルコード次の例では、ユーザーが入力した文字列が数字で始まっているかどうかを、\A を使った正規表
-
Pythonで正規表現を使って文字列の先頭にマッチさせる方法
正規表現では、^(キャレット)というメタ文字を使うことで、文字列の先頭にマッチさせることができます。この記号は、パターンが対象となる文字列の冒頭から始まる場合にのみ一致することを意味します。例えば、次のコードは文字列「cheer leaders at the football stadium」の先頭にある単語「cheer」を抽出して表示します。コード例import re s = cheer leaders at the football stadium result = re.search(r^\w+, s) print(result.group())ここで使用しているパターン r^\w+