{if $Think.config.ja.regexdso.status == '1'} {/if

よく使われる正規表現

説明 正規表現
URL [a-zA-z]+://[^\s]*
IPアドレス ((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)
Emailアドレス \w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
QQ番号 [1-9]\d{4,}
HTMLタグ(内容または自己閉じタグを含む) <(.*)(.*)>.*<\/\1>|<(.*) \/>
パスワード(数字、大文字、小文字、記号を必ず含み、8文字以上) (?=^.{8,}$)(?=.*\d)(?=.*\W+)(?=.*[A-Z])(?=.*[a-z])(?!.*\n).*$
日付(年-月-日) (\d{4}|\d{2})-((1[0-2])|(0?[1-9]))-(([12][0-9])|(3[01])|(0?[1-9]))
日付(月/日/年) ((1[0-2])|(0?[1-9]))/(([12][0-9])|(3[01])|(0?[1-9]))/(\d{4}|\d{2})
時間(時間:分、24時間制) ((1|0?)[0-9]|2[0-3]):([0-5][0-9])
漢字(文字) [\u4e00-\u9fa5]
中国語と全角記号(文字) [\u3000-\u301e\ufe10-\ufe19\ufe30-\ufe44\ufe50-\ufe6b\uff01-\uffee]
中国本土の固定電話番号 (\d{4}-|\d{3}-)?(\d{8}|\d{7})
中国本土の携帯電話番号 1\d{10}
中国本土の郵便番号 [1-9]\d{5}
中国本土の身分証明書番号(15桁または18桁) \d{15}(\d\d[0-9xX])?
非負整数(正の整数またはゼロ) \d+
正の整数 [0-9]*[1-9][0-9]*
負の整数 -[0-9]*[1-9][0-9]*
整数 -?\d+
小数 (-?\d+)(\.\d+)?
abcを含まない単語 \b((?!abc)\w)+\b
説明 正規表現
ユーザー名 /^[a-z0-9_-]{3,16}$/
パスワード /^[a-z0-9_-]{6,18}$/
16進数値 /^#?([a-f0-9]{6}|[a-f0-9]{3})$/
電子メール /^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/
URL /^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/
IPアドレス /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/
HTMLタグ /^<([a-z]+)([^<]+)*(?:>(.*)<\/\1>|\s+\/>)$/
Unicodeエンコードの漢字範囲 /^[u4e00-u9fa5],{0,}$/
中国文字をマッチさせる正規表現 [\u4e00-\u9fa5]
コメント:中国文字をマッチさせるのは本当に面倒なことですが、このエクスプレッションがあれば簡単です
二バイト文字(漢字を含む)をマッチさせる [^\x00-\xff]
コメント:文字列の長さを計算するために使用できます(1つの二バイト文字は長さ2、ASCII文字は長さ1とカウントされます)
空白行をマッチさせる正規表現 \n\s*\r
コメント:空白行を削除するのに役立ちます
HTMLタグをマッチさせる正規表現 <(\S*?)[^>]*>.*?<\/\1>|<.*?/>
コメント:オンラインで流通しているバージョンは全く使えません。このバージョンも一部の複雑なネストされたタグには無力です
首尾両端の空白文字をマッチさせる正規表現 ^\s*|\s*$
コメント:行の最初と最後の空白文字(スペース、タブ、ページ区切りなど)を削除するのに非常に便利なエクスプレッションです
Emailアドレスをマッチさせる正規表現 \w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
コメント:フォームバリデーション時には非常に実用的です
URLをマッチさせる正規表現 [a-zA-z]+://[^\s]*
コメント:オンラインで流通しているバージョンは機能が限られていますが、上記のエクスプレッションはニーズを満たすことができます
アカウントが有効かどうかを確認する(アルファベットで始まり、5〜16バイト、英数字とアンダースコアを許可) ^[a-zA-Z][a-zA-Z0-9_]{4,15}$
コメント:フォームバリデーション時には非常に実用的です
国内の電話番号をマッチさせる \d{3}-\d{8}|\d{4}-\d{7}
コメント:0511-4405222 または 021-87888822の形式をマッチさせます
Tencent QQ番号をマッチさせる [1-9][0-9]{4,}
コメント:Tencent QQ番号は10000から始まります
中国本土の郵便番号をマッチさせる [1-9]\d{5}(?!\d)
コメント:中国本土の郵便番号は6桁の数字です
身分証明書をマッチさせる \d{15}|\d{18}
コメント:中国本土の身分証明書は15桁または18桁です
IPアドレスをマッチさせる \d+\.\d+\.\d+\.\d+
コメント:IPアドレスを抽出するのに便利です
特定の数字をマッチさせる:
^[1-9]\d*$ //正の整数をマッチさせる
^-[1-9]\d*$ //負の整数をマッチさせる
^-?[1-9]\d*$ //整数をマッチさせる
^[1-9]\d*|0$ //非負整数(正の整数 + 0)をマッチさせる
^-[1-9]\d*|0$ //非正整数(負の整数 + 0)をマッチさせる
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$ //正の浮動小数点数をマッチさせる
^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$ //負の浮動小数点数をマッチさせる
^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$ //浮動小数点数をマッチさせる
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$ //非負浮動小数点数(正の浮動小数点数 + 0)をマッチさせる
^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$ //非正浮動小数点数(負の浮動小数点数 + 0)をマッチさせる
コメント:大量データを処理する際に役立ちます。具体的な適用時には修正に注意してください
特定の文字列をマッチさせる
^[A-Za-z]+$ //26文字の英字からなる文字列をマッチさせる
^[A-Z]+$ //26文字の大文字からなる文字列をマッチさせる
^[a-z]+$ //26文字の小文字からなる文字列をマッチさせる
^[A-Za-z0-9]+$ //数字と26文字の英字からなる文字列をマッチさせる
^\w+$ //数字、26文字の英字、またはアンダースコアからなる文字列をマッチさせる
文字 説明
\ 次の文字を特殊文字、またはリテラル文字、または後方参照、または8進数エスケープにマークします。例えば、「n」は文字「n」にマッチします。 「\n」は改行にマッチします。シーケンス「\\」は「\」にマッチし、「\(」は「(」にマッチします。
^ 入力文字列の先頭位置にマッチします。RegExpオブジェクトのMultilineプロパティが設定されている場合、^は“\n”または“\r”の後の位置にもマッチします。
$ 入力文字列の終端位置にマッチします。RegExpオブジェクトのMultilineプロパティが設定されている場合、$は“\n”または“\r”の前の位置にもマッチします。
* 前のサブエクスプレッションに0回以上マッチさせます。例えば、zo*は「z」と「zoo」の両方にマッチします。*は{0,}に等しいです。
+ 前のサブエクスプレッションに1回以上マッチさせます。例えば、「zo+」は「zo」と「zoo」にマッチしますが、「z」にはマッチしません。+は{1,}に等しいです。
? 前のサブエクスプレッションに0回または1回マッチさせます。例えば、「do(es)?」は「do」または「does」内の「do」にマッチします。?は{0,1}に等しいです。
{n} nは非負整数です。確定的にn回マッチさせます。例えば、「o{2}」は「Bob」内の「o」にはマッチしませんが、「food」内の2つのoにはマッチします。
{n,} nは非負整数です。少なくともn回マッチさせます。例えば「o{2,}」は「Bob」内の「o」にはマッチしませんが、「foooood」内のすべてのoにはマッチします。「o{1,}」は「o+」に等しいです。「o{0,}」は「o*」に等しいです。
{n,m} mとnは共に非負整数で、n≤mです。少なくともn回マッチさせ、最大m回マッチさせます。例えば「o{1,3}」は「fooooood」内の最初の3つのoにマッチします。「o{0,1}」は「o?」に等しいです。カンマと2つの数の間には空白を含めないでください。
? この文字が他の任意の制約記号(*,+,?,{n},{n,},{n,m})に続くとき、マッチパターンは非貪欲になります。非貪欲モードはできるだけ少ないマッチを行い、デフォルトの貪欲モードはできるだけ多くのマッチを行います。例えば、文字列「oooo」の場合、「o+?」は単一の「o」にマッチし、「o+」はすべての「o」にマッチします。
. “\n”を除く任意の単一の文字にマッチします。“\n”を含む任意の文字にマッチさせるには、「[.\n]」のパターンを使用します。
(pattern) パターンにマッチし、そのマッチを取得します。取得したマッチは生成されたMatchesコレクションから取得可能で、VBScriptではSubMatchesコレクションを使用し、JScriptでは$0…$9プロパティを使用します。丸括弧文字をマッチさせるには、「\(」または「\)」を使用します。
(?:pattern) パターンにマッチしますが、マッチの結果を取得しません。つまりこれは非取得マッチで、後で使用するための保存を行いません。これは、「(|)」キャラクタを使って複数のパターンの部分を組み合わせるときに非常に便利です。例えば「industr(?:y|ies)」は「industry|industries」よりも簡潔なエクスプレッションです。
(?=pattern) 肯定先読み、任意のパターンにマッチする文字列の先頭にマッチします。これは非取得マッチで、取得する必要はありません。例えば「Windows(?=95|98|NT|2000)」は「Windows2000」の「Windows」にマッチしますが、「Windows3.1」内の「Windows」にはマッチしません。先読みは文字を消費しません。つまり、マッチが発生した後、最終マッチの後に次のマッチ検索を開始します。
(?!pattern) 否定先読み、任意のパターンにマッチしない文字列の先頭にマッチします。これは非取得マッチで、取得する必要はありません。例えば「Windows(?!95|98|NT|2000)」は「Windows3.1」の「Windows」にマッチしますが、「Windows2000」にある「Windows」にはマッチしません。先読みは文字を消費しません。つまり、マッチが発生した後、最後のマッチの後に次のマッチの検索を開始します。
x|y xまたはyにマッチします。例えば、「z|food」は「z」または「food」にマッチします。「(z|f)ood」は「zood」または「food」にマッチします。
[xyz] 文字セット。含まれる任意の1文字にマッチします。例えば、「[abc]」は「plain」内の「a」にマッチします。
[^xyz] 否定文字集合。含まれない任意の文字にマッチします。例えば、「[^abc]」は「plain」内の「p」にマッチします。
[a-z] 文字範囲。指定された範囲の任意の文字にマッチします。例えば、「[a-z]」は「a」から「z」までの任意の小文字にマッチします。
[^a-z] 否定文字範囲。指定された範囲内にない任意の文字にマッチします。例えば、「[^a-z]」は「a」から「z」の範囲外の任意の文字にマッチします。
\b 単語境界にマッチします。つまり、単語と空白の間の位置です。例えば、「er\b」は「never」の「er」にマッチしますが、「verb」の「er」にはマッチしません。
\B 非単語境界にマッチします。「er\B」は「verb」の「er」にマッチしますが、「never」の「er」にマッチしません。
\cx xで指定された制御文字にマッチします。例えば、\cMはControl-Mまたはキャリッジリターンにマッチします。xの値はA-Zまたはa-zのいずれかでなければなりません。その他の場合は、cをリテラルの「c」として扱います。
\d 数字の文字にマッチします。これは[0-9]に等しいです。
\D 非数字文字にマッチします。これは[^0-9]に等しいです。
\f ページ区切りにマッチします。これは\x0cと\cLに等しいです。
\n 改行にマッチします。これは\x0aと\cJに等しいです。
\r キャリッジリターンにマッチします。これは\x0dと\cMに等しいです。
\s 任意の空白文字にマッチします。これはスペース、タブ、ページ区切りなどです。これは[\f\n\r\t\v]に等しいです。
\S 任意の非空白文字にマッチします。これは[^\f\n\r\t\v]に等しいです。
\t タブ文字にマッチします。これは\x09と\cIに等しいです。
\v 垂直タブにマッチします。これは\x0bと\cKに等しいです。
\w アンダースコアを含む任意の単語文字にマッチします。これは「[A-Za-z0-9_]」に等しいです。
\W 任意の非単語文字にマッチします。これは「[^A-Za-z0-9_]」に等しいです。
\xn nにマッチ、nは16進数エスケープ値です。16進数エスケープ値は確定的に2桁の長さです。例えば、「\x41」は「A」にマッチします。「\x041」は「\x04&1」と等しいです。正規表現内ではASCIIコーディングを使用できます。
\num numにマッチ、numは正の整数です。取得したマッチへの参照です。例えば、「(.)\1」は連続する同じ文字2つにマッチします。
\n 8進数エスケープ値または後方参照を示します。もし\nの前に少なくともn個の取得したサブエクスプレッションがある場合、nは後方参照になります。さもなくば、nが8進数の数字(0-7)であればnは8進数エスケープ値になります。
\nm 8進数エスケープ値または後方参照を示します。もし\nmの前に少なくともnm個の取得したサブエクスプレッションがある場合、nmは後方参照になります。もし\nの前に少なくともn個の取得があれば、nは文字mの後に続く後方参照になります。前の条件が満たされなければ、nとmが8進数の数字(0-7)であれば\nmが8進数エスケープ値nmにマッチします。
\nml nが8進数の数字(0-3)で、mとlが8進数の数字(0-7)であれば、8進数エスケープ値nmlにマッチします。
\un nにマッチ、nは4桁の16進数数字で表されたUnicode文字です。例えば、\u00A9は著作権記号(©)にマッチします。

一般的な正規表現の大全 - URL、携帯電話番号、英数字、フォームバリデーションなどを含む

私たちの一般的な正規表現リストを使用していただきありがとうございます!ここでは、さまざまな便利な正規表現を収集し、URLの検証、携帯電話番号の検証、英数字の検証、フォームバリデーションなどの一般的なシナリオをカバーしています。データ検証、文字列処理、検索置換を行う場合、ここで必要な正規表現の例を見つけることができます。

一般的な正規表現の例

  • URL正規表現:URL形式が有効かどうかを検証します。例:http://www.example.com。
  • 携帯電話番号正規表現:携帯電話番号形式を検証し、異なる国の番号規則をサポートします。
  • 英数字正規表現:英字と数字の組み合わせにマッチし、ユーザー名やパスワードの検証に使用されます。
  • フォームバリデーション正規表現:メールアドレス、身分証明書番号、郵便番号などのフォーム入力検証に使用されます。
  • 文字列処理正規表現:余分な空白の削除、特殊文字の置換など、一般的な処理方法を含みます。
  • 正規表現置換:正規表現を使用して文字列を置換し、複雑なパターンマッチをサポートします。
  • 正規表現検索:文字列内でマッチする部分を検索し、複数のマッチモードをサポートします。

一般的な正規表現の例

以下は、いくつかの一般的な正規表現とその説明で、開発者が迅速に対応できるようにします:

  • メールアドレス検証:/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/
  • 携帯電話番号検証:/^(1[3-9])\d{9}$/
  • URL検証:/^(http:\/\/|https:\/\/)?[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$/
  • 数字と文字のみ検証:/^[A-Za-z0-9]+$/
  • 身分証番号検証:/^\d{15}|\d{18}$/

正規表現による検証および処理の方法

正規表現はデータ検証および文字列処理に広く応用されています。例えば:

  • フォームバリデーション:正規表現を使用して、ユーザー入力データのフォーマットを検証し、メールアドレスや電話番号などのデータの合法性を確認します。
  • データクリーニング:正規表現を用いて、テキストから特定の文字列を抽出または置換します。余分な空白を削除したり特殊文字を置換したりします。
  • 情報マッチ:正規表現を使用して文字列内のマッチ項目を迅速に検索でき、大規模データ内での迅速な検索が可能です。

正規表現を使い始める

私たちの一般的な正規表現大全を通じて、必要な正規表現を簡単に見つけ、プロジェクトに適用できます。データの検証、文字列処理、複雑なパターンマッチを行う際、私たちの正規表現ライブラリはすべてのニーズに応じます。

本ツールがあなたの開発作業に役立つことを願っています。もし他の正規表現のニーズがあれば、ぜひ私たちのその他の関連ツールやリソースをチェックしてください。

あなたの足跡:
言語を選択