正規文字 | 説明 |
---|---|
\ | 次の文字を特殊文字、リテラル文字、バッククォート、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)? "は"does "または"does "にマッチします。"do "。?と等価です。{0,1}。 |
{n} | nは負でない整数である。決定されたn回マッチする。例えば、"o{2} "にはマッチしません。"Bob "にはマッチしないが"o ",にはマッチしないが"food "にはマッチしないが |
{n,} | nは負でない整数である。少なくともn回マッチする。例えば、"o{2,} "は"Bob "にはマッチしないが"o ",にはマッチしないが"foooood "にはマッチしないが"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})この文字の直後に他の制限文字(*,+,?, ?)のいずれかが続く場合、マッチパターンはnon-greedyとなります。non-greedyパターンは、検索された文字列のうち、できるだけ少ない文字列にマッチし、デフォルトのgreedyパターンは、検索された文字列のうち、できるだけ多くの文字列にマッチします。例えば、文字列"oooo ","o+? "は単一の"o ",と"o+ "はすべてにマッチします。"o "。 |
. | は" 以外の1文字にマッチします。\ 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 "。つまり、マッチが発生した後、次のマッチの検索は、プ リチェックを含む文字の後ではなく、最後にマッチした文字の直後から開始されます。 |
(?<=pattern) | リバース・ポジティブ・プリチェックは、フォワード・ポジティブ・プリチェッ クと似ていますが、逆方向です。例えば、"(?<=95|98|NT|2000)Windows "は"2000Windows "にマッチするが"Windows ",にはマッチするが"3.1Windows "にはマッチしない。"Windows "。 |
(?<!pattern) | 逆負接頭辞は順接頭辞と似ていますが、逆方向です。たとえば、"(?<!95|98|NT|2000)Windows "は"3.1Windows "にはマッチするが"Windows ",にはマッチするが"2000Windows "は"Windows "。 |
x|y | はxかyにマッチする。z|food "は"z "または"food "。"(z|f)ood "マッチ"zood "または"food "。 |
[xyz] | 文字の集合。セット内の任意の文字にマッチします。例えば、"[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 | 改ページにマッチします。と同じです。 |
\n | 改行文字にマッチします。と同じです。 |
\r | キャリッジリターンにマッチします。キャリッジリターンにマッチします。 |
\s | 空白、タブ、改ページなど、任意の空白文字にマッチします。と同じです。[ \f\n\r\t\v]。 |
\S | 空白以外の文字にマッチします。と同じです。[^ \f\n\r\t\v]。 |
\t | タブにマッチします。と同じです。 |
\v | 垂直タブにマッチします。(注1) ⅳ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は後方参照です。もしnmが少なくとも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 は著作権記号 (©) にマッチします。 |
ユーザー名 | /^[a-z0-9_-]{3,16}$/ |
---|---|
パスワード | /^[a-z0-9_-]{6,18}$/ |
パスワード2 | (?=^.{8,}$)(?=.*\d)(?=.*\W+)(?=.*[A-Z])(?=.*[a-z])(?!.*\n).*$ (数字/大文字/小文字/句読点で構成され、4つすべてが存在し、8桁以上でなければなりません。) |
16進数 | /^#?([a-f0-9]{6}|[a-f0-9]{3})$/ |
Eメール | /^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/ /^[a-z\d]+(\.[a-z\d]+)*@([\da-z](-[\da-z])?)+(\.{1,2}[a-z]+)+$/または\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* |
URL | /^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/ または[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?)/ /^(?:(?: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]?)$/ または((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?) |
HTMLタグ | /^<([a-z]+)([^<]+)*(?:>(.*)<\/\1>|\s+\/>)$/または<(.*)(.*)>.*<\/\1>|<(.*) \/> |
コメント削除 | (?<!http:|\S)//.*$ |
全角文字(漢字を含む) | [^\x00-\xff] |
漢字(文字) | [\u4e00-\u9fa5] |
Unicodeコードの漢字範囲 | /^[\u2E80-\u9FFF]+$/ |
中国語と全角句読点(文字) | [\u3000-\u301e\ufe10-\ufe19\ufe30-\ufe44\ufe50-\ufe6b\uff01-\uffee] |
日付(年-月-日) | (\d{4}|\d{2})-((0?([1-9]))|(1[1|2]))-((0?[1-9])|([12]([1-9]))|(3[0|1])) |
年月日(月/日/年) | ((0?[1-9]{1})|(1[1|2]))/(0?[1-9]|([12][1-9])|(3[0|1]))/(\d{4}|\d{2}) |
時間(時:分、24時間制) | ((1|0?)[0-9]|2[0-3]):([0-5][0-9]) |
中国本土固定電話番号 | (\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+)? |
空白行 | \ns*r or \n(editplus) または[\s\S ]*\n |
QQ数 | [1-9]\d{4,} |
abcを含まない単語 | \b((?!abc)\w)+\b |
最初と最後の空白文字に一致 | ^\s*|\s*$ |
よく使われる編集 | 以下は特殊な漢字の置換です。(editplus) ^[0-9].*\n ^[^以下は、特殊な漢字の置換です。].*\n ^[演習].*\n ^[\s\S ]*\n ^[0-9]*\. ^[\s\S ]*\n <p[^<>*]> href="javascript:if\(confirm\('(.*?)'\)\)window\.location='(.*?)'" <span style=".[^"]*rgb\(255,255,255\)">.[^<>]*</span> <DIV class=xs0>[\s\S]*?</DIV> |