Java 如何结合两个正则表达式进行地址表单验证?
我有两个正则表达式 1.)对于无效的采购订单箱:Java 如何结合两个正则表达式进行地址表单验证?,java,regex,validation,input,street-address,Java,Regex,Validation,Input,Street Address,我有两个正则表达式 1.)对于无效的采购订单箱: ^(?。*\b[p | p]*(OST | OST)*\.*\s*[O | O | 0]*(ffice | ffice)*\.*\s*[b | b][O | O | 0][X |]\b.*$ 2.)对于使特殊字符无效: [^x21-x7E][^x20-x7E]*$ 如何将这两者结合起来,使地址表中的邮政信箱无效以及不允许使用特殊字符?我尝试了不同的事情,但运气不好。我还尝试了@Pattern.List,并添加了两个正则表达式,但都不起作用@Pat
^(?。*\b[p | p]*(OST | OST)*\.*\s*[O | O | 0]*(ffice | ffice)*\.*\s*[b | b][O | O | 0][X |]\b.*$
2.)对于使特殊字符无效:
[^x21-x7E][^x20-x7E]*$
如何将这两者结合起来,使地址表中的邮政信箱无效以及不允许使用特殊字符?我尝试了不同的事情,但运气不好。我还尝试了
@Pattern.List
,并添加了两个正则表达式,但都不起作用@Pattern.List()
总是使我的所有输入无效。非常感谢您的帮助。这里是一个在一个模式中使用更多正则表达式的简单示例。
但是在您的代码中,我认为存在一个问题,因为您的两个正则表达式都以“$”
结尾
添加一些预期有效和无效输入的示例。
String regex1="(\\d)"; // Any Single Digit 1
String regex2="(\\d)"; // Any Single Digit 2
Pattern p = Pattern.compile(re1+re2,Pattern.CASE_INSENSITIVE | Pattern.DOTALL);
Matcher m = p.matcher(txt);
if (m.find())
{
//jobs ...
}