URL匹配后缀部分可能会有特殊字符无法匹配
1 | (http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])? |
URL更简洁的匹配,后缀部分匹配宽泛不精细
1 | [\w\-_/:%]+(\.[\w\-_]+)+([\u0021-\u007e]*)? |
找到前是linux换行,后不是’320500’的光标
1 | \n(?!320500) |
找到后不是’create’的windows换行。即\r\n(?!create)
1 | (?!(\r\ncreate))\r\n |
找到后不是’地址行’的换行,清除,清除前后即URL
1 | (?!(\n.*java\.html))\n.* |
平衡组匹配???
1 | (?'Open'\()[2-9][0-9]{2}(?'-Open'\))\s?[0-9]{3}-[0-9]{4}(?(Open)(?!))|[2-9][0-9]{2}(-|\.)[0-9]{3}\1[0-9]{4} |
格式化单行xml格式报文
1 | (?<=>)(?=<(?!\/)) |
找非词组空格
1 | (?<![a-z,A-Z])|(?![a-z,A-Z]) |
找到后面是空行的换行符
1 | \r\n(?<=^$) |
匹配中文字符
1 | [\u4e00-\u9fa5] |
匹配双字节字符(包括汉字在内)
1 | [^\x00-\xff] |
匹配空白行
1 | \n\s*\r |
匹配Email地址
1 | [\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])? |
匹配网址URL
1 | [a-zA-z]+://[^\s]* |
匹配国内电话号码
1 | \d{3}-\d{8}|\d{4}-\{7,8} |
匹配QQ号
1 | [1-9][0-9]{4,} |
匹配中国邮政编码
1 | [1-9]\d{5}(?!\d) |
匹配18位身份证号
1 | ^(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})([0-9]|X)$ |
匹配(年-月-日)格式日期
1 | ([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))) |
匹配正整数
1 | ^[1-9]\d*$ |
匹配负整数
1 | ^-[1-9]\d*$ |
匹配整数
1 | ^-?[1-9]\d*$ |
匹配非负整数(正整数 + 0)
1 | ^[1-9]\d*|0$ |
匹配非正整数(负整数 + 0)
1 | ^-[1-9]\d*|0$ |
匹配正浮点数
1 | ^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$ |
匹配负浮点数
1 | ^-[1-9]\d*\.\d*|-0\.\d*[1-9]\d*$ |