ホームページ > 記事 > ウェブフロントエンド > 正規表現の関連理解
この記事では正規表現の関連知識を詳しく解説します。
d、w、s、[a-zA-Z0-9]、b、.、*、+、?、x{3}、^、$ はそれぞれ何ですか?
d: メタキャラクター、[0-9] に相当する数値 (0 から 9 の 1 つに一致)
w: メタキャラクター、文字、数字、アンダースコア、または漢字に相当し、[0- 9a-zA- Z_];
s: メタ文字、任意の空白文字と一致します。
[a-zA-Z0-9]: [] は範囲を指定し、そのいずれかに一致します。例は、a-z/A-Z/ のいずれかに一致します。 w (漢字を除く);
b: 単語の先頭または末尾と一致するメタキャラクター (単語境界):
var a= "hello helloworld";
a.match(reg); //結果は「hello」です。: メタ文字、改行文字を除くすべての文字に一致します。
*: 0 回以上繰り返される修飾子、少なくとも 1 回繰り返されます。 ;
x{3}: 修飾子、x が 3 回出現します ({n} は n 回繰り返されます。{n,m} は n-m 回繰り返されます (n,m を含む)。{n, } は繰り返されます)少なくとも n 回、{,m} は最大 m 回繰り返されます);
: [] の否定を意味します ([abc] は abc のいずれかに一致し、[abc] は abc 以外の任意の文字に一致します)。回 文字列の先頭と一致します;
$: 文字列の末尾と一致します; (^hello&: hello で始まり hello で終わる文字列と一致します)
両側の空白文字を削除する関数 Trim(str) を作成します。文字列の
function trim(str) { return str.replace(/^\s+|\s+$/g,'') //匹配开头或结尾的空白字符,替换成''; }
function isEmail(str) { var reg = /^[a-zA-Z\d_]+\@[a-zA-Z\d]+\.[a-zA-Z\d]+$/g; return reg.test(str); }
ユーザー入力が携帯電話番号であるかどうかを判断する関数 isPhoneNum(str) を作成します
function isPhoneNum(str) { var reg = /^1[3578]\d{9}$/g; return reg.test(str); }
関数を作成しますisValidUsername(str) は、ユーザー入力が携帯電話番号であるかどうかを判断します
function isValidUsername(str) { var reg = /^([a-zA-Z\d_]){6,20}$/g; return reg.test(str); }
有効なユーザー名ではありません (長さは 6 ~ 20 文字、文字、数字、アンダースコアのみを含めることができます)
function isValidPassword(str) { if (/^[a-zA-Z0-9_]{6,20}$/g.test(str)) { if (/^[a-z]{6,20}$/g.test(str) || /^[A-Z]{6,20}$/g.test(str) || /^[0-9]{6,20}$/g.test(str) || /^[_]{6,20}$/g.test(str)) { return false; }else { return true; } }else { return false; } }
関数 isValidPassword(str) を作成します) ユーザー入力が正当なパスワード (長さは 6 ~ 20 文字、大文字、小文字、数字、アンダースコアのみ、および少なくとも 2 種類を含む) かどうかを判断します
var re = /*正则...*/var subj = "color: #121212; background-color: #AA00ef; width: 12px; bad-colors: f#fddee "console.log( subj.match(re) ) // ['#121212', '#AA00ef'] var re = /#[a-f\d]{6}/ig;var subj = "color: #121212; background-color: #AA00ef; width: 12px; bad-colors: f#fddee";console.log( subj.match(re) )
すべての色を取得する正規表現を記述します次の文字列
var str = 'hello "hunger" , hello "world"';var pat = /".*"/g; str.match(pat); //输出[""hunger" , hello "world""];
次のコードは何を出力しますか? コードを書き換えて、[""hunger"", ""world""]
var str = 'hello "hunger" , hello "world"'; var pat = /".*?"/g; //添加?改成非贪婪模式,尽可能少的匹配; str.match(pat); //[""hunger"", ""world""]
//正規表現はデフォルトで貪欲モードになっており、一致します。条件が満たされている場合は、できるだけ多くの一致を返します。
//コードを書き換えます
rrreee
この記事では、正規表現の関連説明を提供します。さらに関連する内容については、PHP 中国語 Web サイトを参照してください。
関連する推奨事項:
以上が正規表現の関連理解の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。