JavaScriptの正規表現で空白以外の文字を検索する方法(\Sメタ文字)
JavaScriptの正規表現で空白以外の文字を検索するには、メタ文字 \S を使用します。
\S は、スペース・タブ・改行などの空白文字を除く、任意の1文字にマッチします。なお、逆に空白文字そのものにマッチさせたい場合は、小文字の \s を使います。\S は [^ \t\n\r\f\v] と書いた場合と同じ意味になります。
サンプルコード
次のコードでは、文字列 "100% Responsive!" から空白以外の文字をすべて抽出しています。正規表現の末尾に g フラグを付けることで、文字列全体を対象に繰り返しマッチングを行うのがポイントです。
<html> <head> <title>JavaScript Regular Expression</title> </head> <body> <script> var myStr = "100% Responsive!"; var reg = /\S/g; var match = myStr.match(reg); document.write(match); </script> </body> </html>
実行結果
1,0,0,%,R,e,s,p,o,n,s,i,v,e,!
String.prototype.match() は g フラグ付きの場合、マッチした文字を要素として持つ配列を返します。そのため、上記のように空白を除く各文字がカンマ区切りで出力されます。
なお、モダンなJavaScriptでは matchAll() を使うと、各マッチの詳細情報(位置など)を持つイテレータを取得できるため、より柔軟な処理が可能です。
-
JavaScriptの正規表現修飾子(g・i・m)をサンプルコード付きで解説
JavaScriptの正規表現修飾子とは JavaScriptの正規表現における修飾子(フラグ)とは、パターンリテラルの末尾に付加することで検索の挙動を変更できる、省略可能な指定のことです。これを使うことで、大文字と小文字を区別しない検索や文字列全体を対象としたグローバル検索などが簡単に実現できます。さらに、複数の修飾子を組み合わせて指定することも可能です。 主な修飾子の一覧 修飾子説明 gグローバルマッチングを有効にします。最初の一致で処理を止めず、マッチしたすべての結果を返します。 i大文字と小文字を区別しない(ignore case)マッチングを有効にします。 m複数行(mul
-
C#における正規表現の基本と実践例:文字列の分割から空白の削除まで
正規表現(Regular Expression)とは、入力されたテキストに対してパターンマッチングを行うための記述方式です。.NETフレームワークには正規表現エンジンが組み込まれており、このようなパターンマッチングを簡単に実装できます。本記事では、C#で正規表現を活用する具体的な方法を2つの例を通じて解説します。まずはRegex.Splitを使った文字列の分割方法から見ていきましょう。Regex.Splitで文字列を分割する正規表現を使って文字列を分割するには、Regex.Splitメソッドを使用します。例として、改行コード(\r\n)を含む次のような文字列を想定します。string str