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

JavaScriptの正規表現でキャリッジリターン文字( )を検索する方法

JavaScriptの正規表現(RegExp)を使って文字列中のキャリッジリターン(復帰)文字を検索するには、メタ文字 \r を使用します。

キャリッジリターン文字とは

キャリッジリターンは、カーソルを行の先頭に戻すための制御文字で、Unicodeでは U+000D に対応します。Windowsでは改行が「\r\n」(CRLF)、Unix系OSやmacOSでは「\n」(LF)として扱われるため、テキスト処理の際にこの違いを意識することが重要です。

正規表現パターン

\r

サンプルコード

以下のコードでは、search() メソッドと正規表現 /\r/ を組み合わせて、文字列内にキャリッジリターン文字が存在するかどうかを確認しています。マッチした場合は、その先頭位置(インデックス番号)を返します。マッチしなかった場合は -1 が返されます。

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

   <body>
      <script>
         var myStr = "100% \r Responsive!";
         var reg = /\r/;
         var match = myStr.search(reg);
         
         document.write(match);
      </script>
   </body>
</html>

実行結果

上記の例では、キャリッジリターン文字「\r」は文字列 "100% \r Responsive!" の5文字目(インデックスは0から始まるため)に位置しているため、出力結果は以下のようになります。

5

補足:他の検索方法との組み合わせ

search() 以外にも、match()test() メソッドを使うことで、マッチした文字列の取得や真偽値による判定が可能です。例えば /\r/.test(myStr) とすれば、キャリッジリターンの有無を true / false で簡単に確認できます。改行コード(\n)やタブ(\t)など、その他の制御文字も同様の方法で検索できます。

  1. JavaScriptのRegExp(正規表現)オブジェクトとは?基本の使い方をわかりやすく解説

    RegExp(正規表現)オブジェクトは、テキストに対してパターンマッチングを行い、目的の文字列部分を検索・抽出するために使用されます。JavaScriptでは、RegExpオブジェクトを「RegExpコンストラクタ」または「リテラル構文」の2通りの方法で作成できます。 RegExpオブジェクトの作成方法 コンストラクタを使用する場合: new RegExp(pattern) リテラル構文を使用する場合: /pattern/ 主なメソッド test():文字列がパターンに一致するかどうかを真偽値(true / false)で返します。 exec():パターンに一致した文字列を返します。

  2. JavaScriptの二分探索(バイナリサーチ)でソート済み配列を検索する方法

    問題昇順にソートされた数値の配列 arr を第1引数に、検索したい数値 target を第2引数として受け取るJavaScript関数を作成します。配列がすでにソートされているため、二分探索(バイナリサーチ)アルゴリズムを使って target を効率的に検索します。target が配列内に存在する場合はそのインデックスを返し、存在しない場合は -1 を返す必要があります。入出力の例たとえば、関数への入力が次の場合を考えます。入力const arr = [3, 5, 7, 9, 11, 13, 15, 16, 18, 21, 24, 25, 28];const target = 13;出力con