记录一些正则表达式
在java中通过标点符号和空白符等正则表达式来分割字符串
1.正则表达式 [\\p{Punct}\\s]+
String[] Res = Test.split("[\\p{Punct}\\s]+");

结论:可以分割空格,以及英文符号,不支持中文符号,大括号除外(个人任务大括号不分中英文),,同时把数字作为分割
2.正则表达式\\P{L}+
/* 小写p后大括号里面的值得意义 P:标点符号 L:字母; M:标记符号(一般不会单独出现); Z:分隔符(比如空格、换行等); S:符号(数学符号、货币符号等); N:数字(阿拉伯数字、罗马数字等); C:其他字符 以上的都有详细分类 */ String[] Res = Test.split("\\P{L}+");

结论:可以分割各种符号空格,不分中英文,同时把数字作为分割
3.正则表达式\\W+
String[] Res = Test.split("\\W+");

结论:按照除了英文以外的字符分割
4.正则表达式
[\\p{P}\\s]+
String[] Res = Test.split("[\\p{P}\\s]+");

结论:去掉各种标点以及空格
2021-11-30手机号码正则
var phone =/^(13[0-9]{9}|14[01456789]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/; //正则1
var phone = /^1(3[0-9]|4[01456789]|5[0-35-9]|6[2567]|7[0-8]|8[0-9]|9[0-35-9])\d{8}$/; //正则2
中国电信号段:133、153、173、177、180、181、189、190、191、193、199
中国联通号段:130、131、132、145、155、156、166、167、171、175、176、185、186、196
中国移动号段:134(0-8)、135、136、137、138、139、1440、147、148、150、151、152、157、158、159、172、178、182、183、184、187、188、195、197、198
中国广电号段:192
其他号段:14号段部分为上网卡专属号段:中国联通145,中国移动147,中国电信149
虚拟运营商:电信:1700、1701、1702、162 移动:1703、1705、1706、165 联通:1704、1707、1708、1709、171、167 卫星通信:1349、174 物联网:140、141、144、146、148
13开头的手机号是全段:13 [0123456789] 比如130,131,132…139 14[01456879] 比如140,141,144,145…149 15 [012356789] 比如150,151,152,153,155…159 16[2567] 比如:162,165,166,167 17 [01235678] 比如170,171,172,173…178 18开头的手机号是全段:18[0123456789] 比如180,181,182…189 19 [012356789] 比如190,191,192,193,195…159
未完待续...
本文来自博客园,作者:Yesong_Li,转载请注明原文链接:https://www.cnblogs.com/YesongLi/p/13889177.html

浙公网安备 33010602011771号