一,、驗(yàn)證表達(dá)式只能輸入數(shù)字:"^[0-9]*$",。 二,、驗(yàn)證合法性C#校驗(yàn)合法性:if (!Regex.IsMatch(this.txtCode.Text.Trim(), @"^[0-9]*$", RegexOptions.Singleline)) Console.Write("只能輸入數(shù)字"); JS校驗(yàn)合法性:if(/^[0-9]*$/.test($("input_code").val())) { alert("只能輸入數(shù)字");} 三、限制輸入C#限制輸入//輸入除了數(shù)字之外的所有非法字符的判斷 private void textBox1_KeyPress(object sender, KeyPressEventArgs e) { //退格鍵(8),、 回車(13),、全選(1)、復(fù)制(3),、粘貼(22) e.Handled = !(Regex.IsMatch(e.KeyChar, @"\d", RegexOptions.Singleline) || e.KeyChar == (char)8 ||e.KeyChar != (char)13) } 粘貼時(shí)過濾不是數(shù)字的字符 private void textbox1_TextChanged(object sender, EventArgs e) { var reg = new Regex("^[0-9]*$"); var str = textbox1.Text.Trim(); var sb = new StringBuilder(); if (!reg.IsMatch(str)) { for (int i = 0; i < str.Length; i++) { if (reg.IsMatch(str[i].ToString())) { sb.Append(str[i].ToString()); } } textbox1.Text = sb.ToString(); //定義輸入焦點(diǎn)在最后一個(gè)字符 textbox1.SelectionStart = textbox1.Text.Length; } } JS限制輸入onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" 四,、應(yīng)用應(yīng)用1:用正則表達(dá)式從URL地址中提取文件名的javascript程序,如下結(jié)果為page1 s="http://www./page1.htm"s=s.replace(/(.*\/){0,}([^\.]+).*/ig,"$2") alert(s) 應(yīng)用2:計(jì)算字符串的長(zhǎng)度(一個(gè)雙字節(jié)字符長(zhǎng)度計(jì)2,,ASCII字符計(jì)1) String.prototype.len=function(){return this.replace([^\x00-\xff]/g,"aa").length;} 應(yīng)用3:vs中批量操作(按ctrl+H 選上正則表達(dá)式) //.* 替換為空,。 刪除空行: ^(\s*)\n 替換成空。 |
|
來(lái)自: 時(shí)間劇毒 > 《C#基礎(chǔ)入門》