我正在尝试构建满足这些要求的正则表达式
号码街道名称
数字 - 至少一位数字,后跟任意数量的附加数字 街道名称 - 任意数量的单词(至少一个),每个单词以大写字母或数字开头,后跟任意数量的大小写字母,数字或句点(。)。
有效字符串的示例是
“123 Milk Ln。”
“15090 178th Ave”
“27 Hilltop Dr. Apt.7”
无效字符串的示例是
“F52 Milk Ln。”
“156A Fantastic St。”
“56样本Ln。”
“1838 Dykhouse Ave.”
^ extra space on the end
“1832 7th st。”
任何有关正则表达式的帮助都将受到赞赏
我尝试了以下内容:
[A-Z][a-z]+,\s[A-Z][a-z]+[^\s](\s[A-Z].)
答案 0 :(得分:1)
您可以尝试:
^\d\d*(\s(?:[A-Z0-9][A-Za-z0-9.]*)){1,}$
说明:
^
行首\s(?:[A-Z0-9][A-Za-z0-9.]*)
表示空格,后跟大写字母
或编号至少一个,然后是A-Za-z0-9。零次或多次(*)
上述序列必须发生1次或多次{1,} 答案 1 :(得分:0)
\d+
[\dA-Z]
- 一个或多个数字(?: *
- 数字或大写字母[\da-zA-Z.]
- 非捕获组,零个或多个空格)+
- 数字,大写字母或小写字母beaconManager.getBeaconParsers().add(new BeaconParser().
setBeaconLayout("m:0-3=4c000215,i:4-19,i:20-21,i:22-23,p:24-24"));
- 非捕获组的结束。该组应出现1次或更多次