文本域输入多个数据字符串验证(用反斜杠隔开号码)

要求:文本域输入多个卡号之间可以用空格换行符隔开,验证时把不符合纯数字和长度不合适的卡号直接过滤掉。代码如下:

function check(n) {   // 检测函数
 // 正则 表示 开头为数字 要11位 结尾
     var text = n.value;
     text = $.trim(text);
     if (text == "") {
          alert("请输入卡号");
          return false;
     }
     text = text.replace(/\r\n/g, "/");
	  text = text.replace(/\n/g, "/");
	  text = text.replace(/\s/g, "/");
	  var cards = text.split("/");
	   
	  var reg = /^[\d]{4,13}$/;     

	  for(var i=0;i<cards.length;i++){
	   if(cards[i]!="" && !reg.test(cards[i])) { 
		 console.info(cards[i]);
	         console.info(i+'卡号输入有误');
                 var temp = text.replace(cards[i],'');
	         text = temp;
	       } 
	   }
	   text = text.toString();
	   var reg1 = /[\\\/]/g;  
	   console.info(text);
	   text = text.replace(/\/+/g, "/");   //替换连续多个反斜杠为一个
	   document.getElementById("content").value = text; 
	 }

 效果图:
     
 
                 

      
 

在 Java 中,若要在字符串输入反斜杠,需要使用转义字符 `\`。因为在 Java 里,反斜杠是转义字符,所以若要在字符串中表示一个反斜杠,需使用两个反斜杠 `\\`。以下是几种在 Java 字符串输入反斜杠的情况及示例代码: ### 直接在字符串输入反斜杠 ```java public class Main { public static void main(String[] args) { String str = "这是一个反斜杠:\\"; System.out.println(str); } } ``` 此代码运行后,输出结果为 `这是一个反斜杠:\`,借助两个反斜杠 `\\` 让单个反斜杠成为字符串的一部分。 ### 在正则表达式里使用反斜杠 在正则表达式中,反斜杠同样具有特殊意义,所以若要匹配一个反斜杠,需要使用四个反斜杠 `\\\\`。这是由于 Java 会先把 `\\\\` 解析为 `\\` 再交给正则表达式,而正则表达式又会把 `\\` 转换为 `\` [^1][^3]。 ```java import java.util.regex.Matcher; import java.util.regex.Pattern; public class Main { public static void main(String[] args) { String input = "abc\\def"; String regex = "\\\\"; Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(input); if (matcher.find()) { System.out.println("找到了反斜杠"); } else { System.out.println("未找到反斜杠"); } } } ``` 该代码运行后,输出结果为 `找到了反斜杠`。 ### 在字符串替换时使用反斜杠 在使用 `replaceAll()` 方法进行字符串替换时,同样要考虑反斜杠在 Java 和正则表达式中的双重解析问题 [^3]。 ```java public class Main { public static void main(String[] args) { String str = "abc\\def"; String newStr = str.replaceAll("\\\\", "\\\\\\\\"); System.out.println(newStr); } } ``` 此代码运行后,输出结果为 `abc\\def`。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值