ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript 正規表現の定義と導入
JavaScript 正規表現
正規表現 (英語: Regular Expression、コード内では regex、regexp、または RE と略されることがよくあります) は、単一の文字列を使用して、特定の構文ルールに準拠する一連の文字列検索パターンを記述し、一致させます。
テキスト検索とテキスト置換に使用できる検索モード。
正規表現とは何ですか?
正規表現は、一連の文字によって形成される検索パターンです。
テキスト内のデータを検索する場合、検索パターンを使用してクエリの対象を説明できます。
正規表現には、単純な文字またはより複雑なパターンを使用できます。
正規表現は、すべてのテキスト検索およびテキスト置換操作に使用できます。
例:var caps = new RegExp("[A-Z]", "g");
例:var caps = /[A-Z]/g;
文字 | 説明 | 例 |
---|---|---|
[exp] | 角括弧([])で括られた文字列、正規表現プロセッサは、角かっこ内の任意の文字 と一致します。 | [exp] は、e、の任意の文字と一致します。 |
[A-Z] は A-Z の任意の文字に一致します; [0-9] は 0-9 の任意の数値に一致します | (exp) | 括弧で囲まれた文字シーケンスの場合、正規表現は正確な文字順序になります。 | マッチ (マッチするものを含む)
(exp) は文字列 "exp" と一致します | (exp1 | exp2) |
exp+式の後に + 文字を使用します。これは、式が次の場合にのみ意味します | が含まれていますと 1 回または複数回一致します。 | |
s | 空白文字、つまりスペース、タブ、キャリッジリターンと一致します | |
S空白文字以外の予期しない文字と一致します | ASB は、空白文字ではない A と一致します。任意の文字 B と一致します。 | |
d | は、0 ~ 9 の数字と一致します。 | |
D | は、数字を除く任意の文字と一致します。 | w |
W |
||
| 一般的に使用される式や修飾子に加えて、正規表現の使用方法を定義するには、3 つの値があり、オプションとして個別に使用することも、一度に複数を使用することもできます。 ||
修飾子 | 説明 |
|
g | 最初に一致したものを返すだけでなく、正規表現を適用して比較文字列内の一致する項目をすべて検索します |
最初の行だけでなく、テキストの複数行を比較および一致させるための式を適用します |
---|
字符序列 | 含义 | 例子 |
---|---|---|
$$ | 把找到的字符串用一个单独的$字符代替 | "Hello World".replace(/o/g, "\$\$");//"Hell\$ W\$rld" |
$& | 使用第一个参数中所给定的字符串来替换所找到的子字符串 | "Hello World".replace(/o/g, "$&");//"Hello World" |
$`(ESC下面那个`) | 使用所找到的字符串之前的文本来替换该子字符串 | "Hello World".replace(/o/g, "$`");//"HellHell WHello Wrld" |
$' | 使用所找到的字符串之后的文本来替换该子字符串 | "Hello World".replace(/o/g, "$'");//"Hell World Wrldrld" |
\$1, \$2 | 当第一个参数中包含的正则表达式使用小括号对进行表达式分组,则可以提取出特定的表达式所匹配的子字符串(\$1对应第一个小括号,\$2对应第二个小括号) | "Hello World".replace(/(o)(r)/g, "\$1\$2\$1\$2");//"Hello Wororldd"(查找到or,然后替换成oror |
还有一种就是replace() 的第二个参数可以用函数方式传入,然后用函数的返回值来替换原子字符串。
var count = 0; function replaceWithCount() { count = count + 1; return count; } alert("Hello World".replace(/o/g, replaceWithCount)); //Hell1 W2rld alert("Hello World".replace(/\s/g, replaceWithCount)); //Hello3World
这只是我写的作为笔记的正则表达式一些简单的判断和javascript用法。正则表达式还可以很复杂很强大,那就要再你要使用的时候再去挖掘思考了。如果想了解更多,可以学习Mozilla开发者网络上的关于javascript中使用正则表达式的指引介绍。写得更加详细。
以上がJavaScript 正規表現の定義と導入の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。