JavaScript常用正規関数の使い方例
3670 ワード
本論文の実例はJavaScriptの一般的な正規関数の使い方を述べている。皆さんに参考にしてあげます。具体的には以下の通りです。
JavaScript正則関数match、exec、test、search、replace、splitは使用します。
*属性「g」、「i」、「m」は、大域一致、大文字小文字の区別のマッチング、複数行一致を指定するために使用されます。
1、match()関数
match()関数:マッチが見つからない場合、戻り値はnullとなります。マッチが見つかったら、結果の行列を返します。
exec()関数:マッチングが見つからない場合、戻り値はnullとなります。マッチが見つかったら、結果の行列を返します。
この配列の0番目の要素は正規表現にマッチするテキストで、1番目の要素はRegExpObjectの1番目のサブ表現にマッチするテキストで、2番目の要素はRegExpObjectの2番目のサブ表現にマッチするテキストです。
test()関数:Boolean値を返します。検索された文字列で与えられた正規表現にマッチするかどうかを示します。
search()関数:正規表現検索と内容が一致する第一サブ文字列の位置を返します。マッチが見つからない場合は-1を返します。
replace()関数:正規表現による文字置換後の文字列のコピーを返します。
SPlit()関数:1つの文字列をサブ文字列に分割し、結果を文字列配列として返します。
JavaScript正規表現はオンラインテストツールです。
http://tools.jb51.net/regex/javascript
正規表現のオンライン作成ツール:
http://tools.jb51.net/regex/create_reg
JavaScriptに関するより多くの内容に興味がある読者は、本局のテーマを見ることができます。「JavaScript正則表現技術大全書」、「JavaScript代替操作技術のまとめ」、「JavaScript検索アルゴリズムのテクニックのまとめ」、「JavaScriptデータ構造とアルゴリズム技術のまとめ」、「JavaScriptはアルゴリズムと技術の総括を遍歴します。」、「JavaScriptのJson操作技術のまとめ」および「JavaScriptエラーとデバッグテクニックのまとめ」
本論文で述べたように、JavaScriptプログラムの設計に役に立ちます。
JavaScript正則関数match、exec、test、search、replace、splitは使用します。
*属性「g」、「i」、「m」は、大域一致、大文字小文字の区別のマッチング、複数行一致を指定するために使用されます。
1、match()関数
match()関数:マッチが見つからない場合、戻り値はnullとなります。マッチが見つかったら、結果の行列を返します。
function RegExpMatch() {
var str = "https://www.jb51.net/jiaoben";
var reg = /[j][\s\S]{3}/gi; // g ,
var result = str.match(reg);
alert(result); // :jb51,jiao
}
2、exec()関数exec()関数:マッチングが見つからない場合、戻り値はnullとなります。マッチが見つかったら、結果の行列を返します。
この配列の0番目の要素は正規表現にマッチするテキストで、1番目の要素はRegExpObjectの1番目のサブ表現にマッチするテキストで、2番目の要素はRegExpObjectの2番目のサブ表現にマッチするテキストです。
function RegExpExec() {
var str = "1234-5678";
var reg = /(\d{4})-(\d{4})/;
var result = reg.exec(str);
alert(result); // :1234-5678,1234,5678
alert(result[1] + ' ' + result[2]); //1234 5678
alert(RegExp.$1 + ' ' + RegExp.$2); //1234 5678
}
3、test()関数test()関数:Boolean値を返します。検索された文字列で与えられた正規表現にマッチするかどうかを示します。
function RegExpTest() {
var str = "https://www.jb51.net/jiaoben";
var reg = /^http:\/\/([\w-]+\.)+[\w-]+(\/[\w-]*)?$|^([\w-]+\.)+[\w-]+(\/[\w-]*)?$/; // URL
var result = false;
if (reg.test(str)) {
result = true;
}
alert(result); //true
}
4、search()関数search()関数:正規表現検索と内容が一致する第一サブ文字列の位置を返します。マッチが見つからない場合は-1を返します。
function RegExpSearch() {
var str = "https://www.jb51.net/jiaoben";
var reg = /(jiaoben)/;
var result = str.search(reg);
alert(result); //20
}
5、replace()関数replace()関数:正規表現による文字置換後の文字列のコピーを返します。
function RegExpReplace() {
var str = "https://www.jb51.net/jiaoben";
var reg = /^(http:\/\/www.jb51.net)\/([\w]*)$/;
var result = str.replace(reg, "$1?userId=$2");
alert(result); //https://www.jb51.net?userId=jiaoben
}
6、スプリット関数SPlit()関数:1つの文字列をサブ文字列に分割し、結果を文字列配列として返します。
function RegExpSplit() {
var str = "1@4@7@9";
var reg = /@/;
var result = str.split(reg); ;
alert(result); //[1,4,7,9]
}
PS:ここでもう2つの非常に便利な正規表現ツールを提供します。JavaScript正規表現はオンラインテストツールです。
http://tools.jb51.net/regex/javascript
正規表現のオンライン作成ツール:
http://tools.jb51.net/regex/create_reg
JavaScriptに関するより多くの内容に興味がある読者は、本局のテーマを見ることができます。「JavaScript正則表現技術大全書」、「JavaScript代替操作技術のまとめ」、「JavaScript検索アルゴリズムのテクニックのまとめ」、「JavaScriptデータ構造とアルゴリズム技術のまとめ」、「JavaScriptはアルゴリズムと技術の総括を遍歴します。」、「JavaScriptのJson操作技術のまとめ」および「JavaScriptエラーとデバッグテクニックのまとめ」
本論文で述べたように、JavaScriptプログラムの設計に役に立ちます。