彙總一些用過的正則表達式

驗證逗號分隔的字符串或者數字

  • 逗號分隔的字符串
// 要求驗證:123,werwr,456,2342
^\w+(,\w+)*$ 
// 或者
^(\w+,)*\w+$
  • 逗號分隔的數字
// 要求驗證:123,45,234
^\d+(,\d+)*$ 
// 或者
^(\d+,)*\d+$
  • 這裏使用()*來匹配0到多個的重複單元

成績範圍正則表達式驗證

  • 驗證成績,數字範圍的正則表達式思路
^\d{1}$  \\ 數字 0 - 9
^(\d{1}|[1-9]\d{1}|100)$  \\ 數字 0 - 100
^(\d{1}|[1-9]\d{1}|1[0-1]\d{1}|120)$  \\ 數字 0 - 120
^(\d{1}|[1-9]\d{1}|[1-6]\d{2}|70\d{1}|710)$  \\ 數字 0 - 710
  • 這裏使用一個() 和 多個| 來匹配不一樣位數的數字

在Java中使用正則表達式的例子

// 在一行字符串中找到數字
String reg = "\\D+(\\d+)$";
Pattern pattern = Pattern.compile(reg);
Matcher matcher = pattern.matcher(tempStr);
if (matcher.find()) {
   String matcherStr = matcher.group(1); // 獲取匹配的數字,從1開始
}

在JavaScript中使用正則表達式的例子

var str = "abcs SDsdD f12"; 
var reg = new RegExp("[a-z]+","gi"); 
console.log(str.match(reg)); 
//同理 
var reg = /[a-z]+/gi; 
console.info(str.match(reg));

// 另外補充一點知識點:用構造函數時,裏面的轉義有的是要2個\
// 例如
var str = "abcs SDsdD f12"; 
var reg = new RegExp("\\w+","g"); 
// 在這裏,1個\就錯了
// var reg = new RegExp("\w+","g"); 
console.log(str.match(reg)); 
//同理 
var reg = /\w+/g; 
console.info(str.match(reg));

參考

相關文章
相關標籤/搜索