JavaScript正規表現のトピック
10792 ワード
数字が含まれているかどうかを判断する
例えば、与えられた文字列strは、数字が含まれているかどうかを確認し、trueに戻ることを含み、そうでなければfalse入力に戻ります.「abc 123」出力:true
二つの方法:正規表現: エルゴード:
例えば、与えられた文字列strは、連続的に繰り返される文字(a-zA-Z)が含まれているかどうかを確認し、trueに戻ります.そうでないとfalse入力に戻ります.「rattler」出力:true
方法1:正規表現のパケット形式の逆参照を採用します.この理解は霧のようなものかもしれません.例を挙げてもいいです.
例えば、与えられた文字列strは、母音文字で終端1、母音文字でa、e、i、o、uを含むかどうかを確認し、対応する大文字2、含んでtrueに戻ります.そうでなければfalse入力に戻ります.gorilla出力:true
文字列のstrが与えられているので、3つの連続した数字1が含まれているかどうかを確認します.含まれていない場合、最初に現れた3つの数字の文字列2を返します.false入力に戻ります.
例えば、与えられた文字列strは、下記のフォーマット1、X X-XXXX-XXXX 2、その中のXはNumberタイプに該当するかどうかを確認する.
文字列のstrを与えられた場合、ドル表記フォーマット1、ドル開始2、整数部分に該当するかどうかを確認し、1桁から3つの数字用、3つの数字用、小数点以下の場合、小数点以下の部分の長さは2、正確なフォーマットは1、023、032.03、または2.03です.
例えば、与えられた文字列strは、数字が含まれているかどうかを確認し、trueに戻ることを含み、そうでなければfalse入力に戻ります.「abc 123」出力:true
二つの方法:
function containsNumber(str) {
var reg = /\d/
return reg.test(str)
}
function containsNumber(str) {
for(let i = 0; i < str.length; i++) {
if (str.indexOf(i) !== -1) {
return true
}
}
return false
}
重複文字列をチェック例えば、与えられた文字列strは、連続的に繰り返される文字(a-zA-Z)が含まれているかどうかを確認し、trueに戻ります.そうでないとfalse入力に戻ります.「rattler」出力:true
方法1:正規表現のパケット形式の逆参照を採用します.この理解は霧のようなものかもしれません.例を挙げてもいいです.
var reg = /(\w{3}) is \1/
reg.test('kid is kid') // true
reg.test('dik is dik') // true
reg.test('kid is dik') // false
reg.test('dik is kid') // false
この例では、検出する文字列の中間がisであるかどうかを判断し、左右の同じ長さが3の文字列であるかを判断し、満足すればtrueに戻ります.そうでなければfalseに戻ります.したがって、重複した文字を検出するには、isを除去する必要があります.function containsRepeatingLetter(str) {
var reg = /([a-zA-Z])\1/
return reg.test(str)
}
方法2:従来のforサイクル巡回方式:function containsRepeatingLetter(str) {
var reg = /[a-zA-Z]/
for(let i = 0; i < str.length; i++) {
if (str[i] === str[i + 1] && reg.test(str[i])) {
return true
}
}
return false
}
母音で終わるかどうかを判断します.例えば、与えられた文字列strは、母音文字で終端1、母音文字でa、e、i、o、uを含むかどうかを確認し、対応する大文字2、含んでtrueに戻ります.そうでなければfalse入力に戻ります.gorilla出力:true
function endsWithVowel(str) {
// /i
var reg = /(a|e|i|o|u)$/i
return reg.test(str)
}
指定された文字列を取得文字列のstrが与えられているので、3つの連続した数字1が含まれているかどうかを確認します.含まれていない場合、最初に現れた3つの数字の文字列2を返します.false入力に戻ります.
function captureThreeNumbers(str) {
var res = str.match(/(\d{3})/)
// console.log(res);
if (res) {
return res[0]
}
return false
}
// res :
[ '987', '987', index: 0, input: '987654', groups: undefined ]
指定されたフォーマットに合致しているかどうかを判断する.例えば、与えられた文字列strは、下記のフォーマット1、X X-XXXX-XXXX 2、その中のXはNumberタイプに該当するかどうかを確認する.
function matchesPattern(str) {
var reg = /^(\d{3}-){2}\d{4}$/
return reg.test(str)
}
USDフォーマットに合っているかどうかを判断します.文字列のstrを与えられた場合、ドル表記フォーマット1、ドル開始2、整数部分に該当するかどうかを確認し、1桁から3つの数字用、3つの数字用、小数点以下の場合、小数点以下の部分の長さは2、正確なフォーマットは1、023、032.03、または2.03です.
function isUSD(str) {
var reg = /^\$\d{1,3}(\,\d{3})*(\.\d{2})?$/
/**
* ^\$ $
* \d{1,3} 1-3
* (\,\d{3})* 0 , 3
* (\.\d{2})? 0 1 2
*/
return reg.test(str)
}
皆さん、コメントありがとうございます.